Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Velocizzazione procedura

22 views
Skip to first unread message

Pietro Scanzi

unread,
Jul 20, 2021, 12:56:05 PM7/20/21
to
Vorrei, se possibile, automatizzare il codice sotto.
In pratica, in un file con pagine suddivise per anno (2020, 2019 etc),
dalla riga 2 alla riga tot, che è variabile e dalla colonna 1 alla
colonna 10 poi dalla colonna 12 alla 21 ho delle numerazioni non
progressive che ordino come da file sotto.
Vorrei poter, per ogni foglio, tramite un box, poter inserire i valori
dell'intervallo, e il foglio dove eseguire l'ordinamento.
Andando indietro con gli anni , ci sono fogli che riportano più anni,
questo il motivo di voler scegliere l'intervallo di volta in volta.

Del codice di sotto, in pratica, vorrei automatizzare la scelta del
foglio 2018 e del range A2 J35.

Anche un file che fa qualcosa del genere sarebbe gradito (da prendere
come esempio)

Grazie


Dim cella(10000)
Dim newc(10000)
n = 0
For riga = 2 To 35
For colonna = 1 To 10
cella(n) = Cells(riga, colonna)
n = n + 1
Next
Next
Sheets.Add After:=ActiveSheet
ActiveSheet.Name = "appoggio"

For n = 0 To 10000
Cells(n + 1, 1) = cella(n)
Next

Columns("A:A").Select
ActiveWorkbook.Worksheets("appoggio").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("appoggio").Sort.SortFields.Add
Key:=Range("A1"), _
SortOn:=xlSortOnValues, Order:=xlAscending,
DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("appoggio").Sort
.SetRange Range("A1:A10000")
.Header = xlNo
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With

xr = 1
Do Until xr = 500
newc(xr - 1) = Cells(xr, 1)
xr = xr + 1
Loop

xr = 2
xc = 12
Sheets("2018").Select

Range("A2:J35").Select
Selection.ClearContents
Range("A2").Select

Z = 0
For xr = 2 To 35
For xc = 1 To 10
Cells(xr, xc) = newc(Z)
Z = Z + 1
Next xc
Next xr

Sheets("appoggio").Delete

Sheets("2018").Select

End Sub

Bruno Campanini

unread,
Jul 27, 2021, 12:50:14 PM7/27/21
to
Pietro Scanzi used his keyboard to write :
O nessuno, come me, non ha capito un c...., ovvero sono tutti
al mare.
Propendo per prima ipotesi.
Perché non invii un file coi dati iniziali, la propcedura da eseguire,
i dati finali?

Bruno
0 new messages