Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

[VBA] Come memorizzare colonne di dati

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

[VBA] Come memorizzare colonne di dati

Postdi riskismoney » 29/08/14 07:54

Buongiorno,
devo creare un codice che mi legga e poi mi analizzi 3 colonne dati. Ogni colonna ha circa 4 mila dati.

La domanda che vorrei porvi è semplicemente capire qual è il modo più veloce per memorizzare le 3 colonne dati in vba.

Preciso che le 3 colonne si trovano in due fogli diversi, le prime due nel foglio1 e la terza nel foglio2.
Grazie
riskismoney
Utente Senior
 
Post: 177
Iscritto il: 25/03/12 16:04

Sponsor
 

Re: [VBA] Come memorizzare colonne di dati

Postdi ricky53 » 29/08/14 08:57

Ciao,
mancano informazioni:
a) con " legga e poi mi analizzi 3 colonne dati" cosa intendi?

b)"semplicemente capire qual è il modo più veloce per memorizzare le 3 colonne dati in vba" anche qui non è chiaro


Leggere le colonne non è un problema anche se i dati sono su fogli diversi ... si deve capire cosa va fatto dopo aver letto !

Per leggere basta un ciclo FOR/NEXT ma poi ....


Attendiamo tue informazioni chiarificatrici e ... un file di esempio senza dati riservati.
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W7; Office 2003-10-13-16
Avatar utente
ricky53
Utente Senior
 
Post: 4223
Iscritto il: 11/04/09 19:29
Località: Italia

Re: [VBA] Come memorizzare colonne di dati

Postdi riskismoney » 29/08/14 09:17

Ciao Ricky53,
grazie per l'intervento.

In realtà ciò che devo fare è molto più complesso ma inutile per ottenere l'informazione che mi serve.

Mettiamola così, ho una serie di colonne che contengono date(la prima) e numeri (la seconda e la terza).

L'analisi successiva deve leggere tutte le righe di tutte le tre colonne e so come farlo.

Per evitare continui accessi al foglio vorrei memorizzare prima tutti i dati contenuti nelle 3 colonne e poi procedere con il resto.

Non sono in grado in questo momento di allegare un file di esempio, spero comunque che stavolta la richiesta sia chiara.

Saluti.
riskismoney
Utente Senior
 
Post: 177
Iscritto il: 25/03/12 16:04

Re: [VBA] Come memorizzare colonne di dati

Postdi riskismoney » 29/08/14 09:54

Ricky53 in pratica io vorrei capire come memorizzare, il più velocemente possibile, i dati contenuti nelle 3 colonne. Null'altro!
riskismoney
Utente Senior
 
Post: 177
Iscritto il: 25/03/12 16:04

Re: [VBA] Come memorizzare colonne di dati

Postdi Anthony47 » 29/08/14 11:08

Vedi viewtopic.php?p=455882#p455248

Se le colonne sono adiacenti puoi inserirle in una unica matrice con, ad esempio:
Codice: Seleziona tutto
Dim VArr1
Altz=Cells(Rows.count,1).End(xlup).Row
Varr1=Range("A1:C" & Altz).Value

Se le colonne sono discontinue userai piu' variabili ognuna con una colonna, tipo
Codice: Seleziona tutto
Dim VArrA, VArrC
Altz=Cells(Rows.count,1).End(xlup).Row
VarrA=Range("A1:A" & Altz).Value
VarrC=Range("C1:C" & Altz).Value


Ciao.
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13892
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [VBA] Come memorizzare colonne di dati

Postdi riskismoney » 29/08/14 11:59

Grazie Anthony :) e grazie anche a Ricky53.
Un saluto.
riskismoney
Utente Senior
 
Post: 177
Iscritto il: 25/03/12 16:04

Re: [VBA] Come memorizzare colonne di dati

Postdi scossa » 29/08/14 13:16

Ciao,

Anthony47 ha scritto:Vedi viewtopic.php?p=455882#p455248
....
Se le colonne sono discontinue userai piu' variabili ognuna con una colonna, tipo
Codice: Seleziona tutto
Dim VArrA, VArrC
Altz=Cells(Rows.count,1).End(xlup).Row
VarrA=Range("A1:A" & Altz).Value
VarrC=Range("C1:C" & Altz).Value



Oppure, se si vogliono i dati di colonne non adiacenti in un unico array:

Codice: Seleziona tutto
Sub TestArr()
  Dim vArr As Variant
  Dim nLR As Long
  Dim sAdd As String
 
  nLR = Cells(Rows.Count, 1).End(xlUp).Row
  sAdd = "row(" & Range("A1:A" & nLR).Address & ")"
  vArr = Application.Index(Range("A:C"), Evaluate(sAdd), Array(1, 3))
  'vArr è un array a 2 dimensioni: vArr(1 to nLR, 1 to 2)
  'dove la seconda dimensione (1 to 2) contiene i valori della colonna A e C
End Sub
Bye!
scossa

Se tu hai una mela, e io ho una mela, e ce le scambiamo, allora tu ed io abbiamo sempre una mela per uno. Ma se tu hai un'idea, ed io ho un'idea, e ce le scambiamo, allora abbiamo entrambi due idee. (George Bernard Shaw)
Avatar utente
scossa
Utente Senior
 
Post: 424
Iscritto il: 01/04/12 16:40
Località: Provincia di Verona

Re: [VBA] Come memorizzare colonne di dati

Postdi riskismoney » 29/08/14 15:52

Grazie Scossa, due soluzioni sono meglio di una. ;)
Un saluto.
riskismoney
Utente Senior
 
Post: 177
Iscritto il: 25/03/12 16:04


Torna a Applicazioni Office Windows


Topic correlati a "[VBA] Come memorizzare colonne di dati":


Chi c’è in linea

Visitano il forum: Maury170419 e 12 ospiti