061. Trasportare un elenco di numeri in orizzontale

Download PDF

Domanda:

Ho cinquanta e più righe.
in ognuna di queste righe ci possono essere da uno a cinque numeri,
ad es. A1 B1 C1 D1 D1
riga 1 > 32 44 31 28 5
riga 2 > 2 30 27 4 1
riga 3 > 7 13 41 8
riga 4 > 6 48 50 49 68
riga 5 > 81 18 15 3
riga 6 > 66 55 85
vorrei che il tutto fosse trasportato in una sola riga, ad es.
A1 B1 C1 D1 E1 F1 G1 H1 I1 L1
riga 1 > 32 44 31 28 5 2 30 27 4 1 etc etc.

Risposta:

Ho risolto la necessità del nostro lettore
con il seguente codice:

‘>>> inibisco visualizzazione cambiamenti nel foglio
Application.ScreenUpdating = False

‘>>> identifico ultima riga non vuota
Last_Row = Sheet1.Cells.Find(“*”, SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row

‘>>> ciclo dalla riga 1 all’ultima riga non vuota
For i = 2 To Last_Row

‘>>> identifico ultima colonna non vuota della riga da spostare
Last_Col_i = Sheet1.Cells(i, 1).End(xlToRight).Column

‘>>> seleziono dati da tagliare
Range(Cells(i, 1), Cells(i, Last_Col_i)).Select
Selection.Cut

‘>>> identifico ultima colonna non vuota della riga 1
Last_Col_1 = Sheet1.Range(“A1”).End(xlToRight).Column
‘>>> seleziono cella da cui iniziare ad incollare dati
Cells(1, Last_Col_1 + 1).Select
‘>>> incollo dati
ActiveSheet.Paste

Next i

‘>>> identifico ultima colonna non vuota
Last_Col = Sheet1.Cells.Find(“*”, SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Column

For j = 1 To Last_Col

‘>>> regolo automaticamente larghezza colonne
Columns(j).EntireColumn.AutoFit

Next j

‘>>> faccio scorrere il foglio alla colonna 1
ActiveWindow.ScrollColumn = 1
Range(“A1”).Select

‘>>> riabilito visualizzazione cambiamenti nel foglio
Application.ScreenUpdating = True

In allegato il file

APRI

Riccardo Vincenti

The following two tabs change content below.