Più file CVS da... "scremare"...

di il
1 risposte

Più file CVS da... "scremare"...

Buongiorno a tutti e complimenti per l'ottimo forum, sempre ricco di spunti e di informazioni. Con un mio collega l'ho trovato in passato molto utile...

Vi scrivo per avere un consiglio, mi trovo in una situazione un po'.... disperata!

Per un errore di configurazione ho acquisito delle grandezze a 100 Hz quando necessitavo di un'acquisizione a 1 Hz. Mi ritrovo quindi con 100 volte i dati necessari!
I dati sono salvati in CVS (separatore virgola) in file da 32000 righe (quando importati in Excel).
I file sono 300!

Da qui l'idea di creare una macro per (nell'ordine):
* Aprire un singolo file CVS.
* Formattare in colonne (separazione virgola).
* Rimuovere 99 righe ogni 100.
* Copiare le righe restanti in un altro file.
* Aprire un secondo file CVS.
* Eseguire le stesse operazioni fatte sul primo file copiando poi le righe selezionate di seguito alle righe copiate dal file precedente.
* Via così per 300 file...

Il tutto per avere alla fine un file composto dai dati di acquisizione ad 1 Hz...

Il problema è che con Visual Basic proprio non ho mai lavorato, macro men che meno! So giusto lanciarle...

Per quanto riguarda la macro di "decimazione" per chiamarla così finora avevo pensato

Sub Dimezza()
Dim lRow As Long
lRow = Range("A65500").End(xlUp).Row
Dim i =0 As Byte
Do While lRow > 0
For i = 1 To 8
Cells(lRow, 1).EntireRow.Delete
lRow = lRow - i
Next
lRow = lRow - 1
Loop

End Sub

Ma non so quanto sia corretta e mi da errore di dichiarazione...

Ci fosse qualche buona anima ad aiutarmi gliene sarei grato!
Un saluto a tutti!
Marco

1 Risposte

  • Re: Più file CVS da... "scremare"...

    Ciao, se intendi procedere con la rimozione delle righe ad intervalli di 99 righe allora ti suggerisco di effettuare l'eliminazione delle righe partendo a ritroso, quindi partendo dall'ultima riga con step negativo (step -N) ; se intendi invece procedere diversamente allora ti suggerisco il criterio di rimozione o modifica, interrogando e processando i valori del campo della colonna interessata.
Devi accedere o registrarti per scrivere nel forum
1 risposte