Discussione:
Numerazione righe
(troppo vecchio per rispondere)
Paolo Donnarumma
2005-08-03 07:25:59 UTC
Permalink
Ciao a tutti!
Avrei la necessità di numerare progressivamente le righe di un foglio di
Excel. Cerco di spiegarmi meglio: da una userform aggiungo righe, il
programma tuttavia ordina le righe in ordine alfabetico dopo aver copiato i
dati dalla userform alla nuova riga ed io sul foglio ho una colonna che
dovrebbe contenere la numerazione progressiva. Non posso attribuire la
numerazione riga per riga dalla userform perchè soggetta successivamente ad
ordinamento e quindi l'unica soluzione mi pare quella di numerare le righe
del foglio una volta ordinate: però non so proprio come fare! C'è qualcuno
che mi può dare un mano?
Ciao a grazie mille!
cucchiaino
2005-08-03 07:38:52 UTC
Permalink
Post by Paolo Donnarumma
Ciao a tutti!
Ciao a te.
Post by Paolo Donnarumma
Avrei la necessità di numerare progressivamente le righe di un foglio di
Excel. Cerco di spiegarmi meglio: da una userform aggiungo righe, il
programma tuttavia ordina le righe in ordine alfabetico dopo aver copiato i
dati dalla userform alla nuova riga ed io sul foglio ho una colonna che
dovrebbe contenere la numerazione progressiva. Non posso attribuire la
numerazione riga per riga dalla userform perchè soggetta successivamente ad
ordinamento e quindi l'unica soluzione mi pare quella di numerare le righe
del foglio una volta ordinate: però non so proprio come fare! C'è qualcuno
che mi può dare un mano?
Nella colonna dove vuoi la numerazione inserisci:

=SE(B2<>"";RIF.RIGA())-1

ipotizzando che i dati cominciano dalla colonna B e che
ci sia una riga di intestazione.

Con l'Autofill comandata da macro puoi evitarti di trascinare
manualmente le formule fino in basso.



()-- cucchiaino
Mauro Gamberini
2005-08-03 08:26:08 UTC
Permalink
Post by Paolo Donnarumma
Avrei la necessità di numerare progressivamente le righe di un foglio di
Excel. Cerco di spiegarmi meglio: da una userform aggiungo righe, il
programma tuttavia ordina le righe in ordine alfabetico dopo aver copiato i
dati dalla userform alla nuova riga ed io sul foglio ho una colonna che
dovrebbe contenere la numerazione progressiva. Non posso attribuire la
numerazione riga per riga dalla userform perchè soggetta successivamente ad
ordinamento e quindi l'unica soluzione mi pare quella di numerare le righe
del foglio una volta ordinate: però non so proprio come fare! C'è qualcuno
che mi può dare un mano?
Mi sembrava di averti già dato una soluzione
in un precedente thread...
Leggi l'ultima riga della colonna con e poi
aumenti il suo valore di 1.
Mi ricordo male io o qualcosa non va in quella soluzione.

Nel caso i numeri non siano ordinati, puoi
leggere il valore massimo della colonna e aumentarlo di 1.

Dim lng As Long

lng=WorksheetFunction.Max (Foglio1("A1:A100"))+1
TextBox1.Text=lng
.....................
....................
....................

Nel pulsante di conferma:

tuaCella = lng


Nel caso tu debba numerare(da vba) una serie di righe.
Mettiamo tu lo voglia fare nella colonna A, i tuoi dati
da B5 in poi.

Dim nr as long
dim lng as long

nr=Range("B65536").End(xlup).row

For lng = 1 to nr
Range("A" & lng+4).value=lng
next

Non testata, ma dovrebbe andare.
--
----------------------------
Mauro Gamberini
PaoloD
2005-08-04 07:35:58 UTC
Permalink
Post by Mauro Gamberini
Post by Paolo Donnarumma
Avrei la necessità di numerare progressivamente le righe di un foglio di
Excel. Cerco di spiegarmi meglio: da una userform aggiungo righe, il
programma tuttavia ordina le righe in ordine alfabetico dopo aver copiato
i
Post by Paolo Donnarumma
dati dalla userform alla nuova riga ed io sul foglio ho una colonna che
dovrebbe contenere la numerazione progressiva. Non posso attribuire la
numerazione riga per riga dalla userform perchè soggetta successivamente
ad
Post by Paolo Donnarumma
ordinamento e quindi l'unica soluzione mi pare quella di numerare le righe
del foglio una volta ordinate: però non so proprio come fare! C'è qualcuno
che mi può dare un mano?
Mi sembrava di averti già dato una soluzione
in un precedente thread...
Leggi l'ultima riga della colonna con e poi
aumenti il suo valore di 1.
Mi ricordo male io o qualcosa non va in quella soluzione.
Nel caso i numeri non siano ordinati, puoi
leggere il valore massimo della colonna e aumentarlo di 1.
Dim lng As Long
lng=WorksheetFunction.Max (Foglio1("A1:A100"))+1
TextBox1.Text=lng
.....................
....................
....................
tuaCella = lng
Nel caso tu debba numerare(da vba) una serie di righe.
Mettiamo tu lo voglia fare nella colonna A, i tuoi dati
da B5 in poi.
Dim nr as long
dim lng as long
nr=Range("B65536").End(xlup).row
For lng = 1 to nr
Range("A" & lng+4).value=lng
next
Non testata, ma dovrebbe andare.
--
----------------------------
Mauro Gamberini
Caro Mauro, il codice postato funziona alla grande, l'unica cosa è che
ho dovuto modificarlo cosi' per non avere la numerazione sulle quattro
celle successive al'ultima riga (vuoi vedere che comincio a capirci
anch'io qualcosa di VBA!):


Dim nr as long
dim lng as long

nr=Range("B65536").End(xlup).row

For lng = 1 to nr - 4
Range("A" & lng+4).value=lng
next



Ciao!
Mauro Gamberini
2005-08-04 09:18:21 UTC
Permalink
Caro Mauro, il codice postato funziona alla grande, l'unica cosa è che
ho dovuto modificarlo cosi' per non avere la numerazione sulle quattro
celle successive al'ultima riga (vuoi vedere che comincio a capirci
anch'io qualcosa di VBA!):
*************************
Bene.
Il mio *Signore del lato oscuro* mi ha promosso Lord++.
8-)
--
----------------------------
Mauro Gamberini
Continua a leggere su narkive:
Loading...