In excel-vba è possibile creare una matrice di tipo variant da una gamma in questo modo:Creare matrice variante con testo al posto di Valore
Dim x As Variant
x = Range("A1:Z1").Value
Ciò, ovviamente, mettere le .Value
proprietà nella matrice. Sto cercando di fare la stessa cosa ma ottenere la proprietà .Text
delle celle, ma non penso sia possibile.
Dim x As Variant
x = Range("A1:Z1").Text '// <~~ type mismatch
La ragione è la seguente, ho una riga di dati in questo modo:
|------A------|------B------|------C------|
1| 01-Jan-2003 27-Feb-2005 15-Sep-2015
voglio uscita la riga in un file di testo con un delimitatore pipa, attualmente I' m di utilizzare questo:
With WorksheetFunction
x = .Transpose(.Transpose(Cells(1, 1).Resize(1, 3).Value))
End With
Print #1, Join(x, "|")
che funziona, ma è sempre la .Value
che è formattato come gg/mm/aaaa così l'uscita assomiglia questo:
01/01/2003|27/02/2005|15/09/2015
Q: Posso mantenere la formattazione utilizzando questo metodo senza dover analizzare/ciclo ogni valore nella matrice prima?
Utilizzare un ** Per ** Loop. –
Sto cercando di evitare di dover eseguire il ciclo dei valori, se possibile, in realtà si tratta di un gruppo di file considerevolmente grandi, quindi un ciclo avrebbe un impatto significativo sul tempo di elaborazione. Ho aggiornato la mia domanda per riflettere sul fatto che non era immediatamente chiaro tbf –