vi scrivo una domanda che sarà banale per chi conosce VBA ma io ne sono completamente a digiuno
uso le macro registrandole ma non so come scrivono
il mio scopo è agire su una colonna con dei valori in tutte le celle ma di queste celle mi interessano solo le prime tre lettere
esempio
aaa-xxxxxx
bbb-xxxxxxx
ccc-xxxxxxx
ddd-xxxxxx
io voglio ottenere
aaa
bbb
ccc
ddd
potrei farlo con la seguente formula nella colonna accanto =sinistra(E1;3) ma avendo più colonne di questo tipo dovrei aggiungere colonne e poi rimuoverle
allora faccio un testo in colonne e mantengo solo la prima colonna
questo il codice che ho registrato
- Codice: Seleziona tutto
Sub Prova()
Selection.TextToColumns Destination:=Range("E1"), DataType:=xlFixedWidth, _
FieldInfo:=Array(Array(0, 1), Array(3, 9)), TrailingMinusNumbers:=True
End Sub
ma dal momento che l'ho registrata dopo aver selezionato la colonna "E" mi mantiene come destinazione la cella E1
come posso scrivere nella macro che la destinazione deve essere la prima cella della colonna selezionata ?
in pratica come posso sostituire "Range("E1")" con Range("Colonna selezionata - Riga1")?
so che per molti è banale ma come ho detto sono a digiuno di VBA
grazie in anticipo per l'aiuto