[Risolto] Macro per traslare valori colonna con riga vuota

Creare una macro - Scrivere uno script - Usare le API
Rispondi
andrea_co
Messaggi: 7
Iscritto il: martedì 25 maggio 2021, 16:35

[Risolto] Macro per traslare valori colonna con riga vuota

Messaggio da andrea_co »

Ciao,
premesso che sono alle prime armi ho la necessità di creare una Macro che mi consenta di Trasporre i valori di una colonna come nell'esempio che allego (sono circa 5000 record nel file completo).

I dati di partenza da trasporre sono quelli presenti nella colonna c (taglia) e il risultato da ottenere è quello evidenziato nella colonna b (risultato da ottenere).

Ringrazio in anticipo per l'aiuto.
Allegati
esempio.ods
(10.5 KiB) Scaricato 97 volte
Ultima modifica di andrea_co il mercoledì 26 maggio 2021, 8:53, modificato 1 volta in totale.
Openoffice 4.1.8 con Windows 7 64 Bit
Gaetanopr
Volontario
Volontario
Messaggi: 3300
Iscritto il: mercoledì 21 novembre 2012, 20:07

Re: Macro per traslare valori colonna con riga vuota

Messaggio da Gaetanopr »

Codice: Seleziona tutto

Sub Main
   Doc = thisComponent
   Sheet = Doc.Sheets.GetByIndex(0)   ' Foglio1
   c = Sheet.createCursor
   c.gotoEndOfUsedArea(false)
   LastRow = c.RangeAddress.EndRow 
   Range = Sheet.GetCellRangeByPosition(2, 1, 2, LastRow)
   Rng= Range.queryContentCells( 1 )
   If Rng.Count > 0 Then
      For i = 0 To Rng.Count - 1
         Ind = Rng.RangeAddresses(i)
         Dati() = Sheet.GetCellRangeByPosition(Ind.StartColumn, Ind.StartRow, Ind.EndColumn, Ind.EndRow).GetDataArray
         Redim Valori(0 To Ubound(Dati))
         For x = 0 To Ubound(Valori)
             Valori(x) = Dati(x)(0)
         Next x  
         Sheet.GetCellByPosition(1, Ind.StartRow).String = Join(Valori, ", ")
      Next i    
   End If   
End Sub
Saluti
LibreOffice 7.2.2.2 windows 10
Openoffice 4.1.13 su windows 10
andrea_co
Messaggi: 7
Iscritto il: martedì 25 maggio 2021, 16:35

Re: [Risolto] Macro per traslare valori colonna con riga vuo

Messaggio da andrea_co »

Funziona perfettamente... Grazie 1000!
Openoffice 4.1.8 con Windows 7 64 Bit
Rispondi