Sto perfezionando il mio progetto del quaderno di campagna ed avrei necessità di un vs. consiglio.
Caso: nella colonna A (0) sono presenti celle con stringhe di testo a due o tre caratteri, es. AB,AB1
Problema: popolare la combobox con le stringhe di testo costituite da solo due caratteri.
Mia soluzione: ho scritto una macro, regolarmente funzionante, così strutturata
Codice: Seleziona tutto
sub riempicombobox6
Dim Doc
Dim Sheet
Dim oCell
Dim a As String
Dim LastRow as Long
Doc = ThisComponent
Sheet=Doc.Sheets.getByName("Fertilizzazioni")
oComboBox6.removeItems("Fertilizzazioni",oComboBox6.getItemCount())
LastRow = LastRowInColonna(Sheet,0)
rem ciclo per caricare la combobox con i codici composti da solo due lettere
dim oFunction as variant
dim aArgument(0) as variant
For i=4 to LastRow +1
oCell = Sheet.getCellByPosition(0, i)
a = oCell.String
oFunction = createUnoService("com.sun.star.sheet.FunctionAccess")
aArgument(0) = a
Num_Car = oFunction.callFunction("LEN",aArgument())
if Num_Car = 2 AND a <> "" then
oComboBox6.addItem(a, dlg.getControl("ComboBox6").ItemCount)
end if
next i
End sub
Richiesta: E' possibile scrivere il ciclo for/next senza l'ausilio della funzione "LEN" ? O meglio, esiste un altro modo di impostare la macro?
Grazie.
Geo