Una famiglia di software per fogli di calcolo Microsoft con strumenti per l'analisi, la creazione di grafici e la comunicazione dei dati.
Ho provato ad implementarla, ma non ottengo alcun risultato...
in ogni caso chiedo se ho capito alcune sintassi:
Set rNonEmpty = .Cells.SpecialCells(xlCellTypeConstants).EntireRow -> è il comando per copiare la riga intera se almeno una cella qualunque della riga non è vuota?
.Cells(riga, 1).Value = a.Row -> definisce il numero della tupla e lo mette in colonna 1 dello sheet riepilogo? (ovvero definito in dichiarazione variabili/costanti ad inizio sub "a" come oggetto definente il numero di riga in sheet CONFRONTO, diviene elemento di cella in successivo loop?)
.Cells(riga, 2).Resize(, 8).Value = Sheets("CONFRONTO").Cells(a.Row, 1).Resize(, 8).Value -> qui penso la comprensione sia piuttosto semplice, ovvero in sheet RIEPILOGO, dato il range di colonna da 2 ad 8 inserisci in cella relativa elemento relativo a sheet CONFRONTO
domanda1: sapevo che VBA è case sensitive... vale anche per i nomi degli sheet?
domanda2: perchè avviare un loop sugli errori runtime? non capisco il perchè di questa macro... scusate l'estrema ignoranza! probabile che questa mia domanda evidenzi la mia totale incompetenza in programmazione... ma io credevo che la funzione On Error fosse relativa ad interruzioni di macro che si volevano evitare... ovvero quando una condizione non soddisfa i requisiti di macro e genera un blocco della stessa, la funziona permette di uscire dal loop di errore prendendo una strada alternativa... o sono completamente fuori strada? (più che possibile!!! ^_^)
Io necessito di una macro che semplicemente copi le righe con almeno una cella dato non vuota dello sheet confronto in sheet riepilogo, senza righe vuote tra loro, con prima colonna indicante numero di tupla e possibilità di stampa dati da tasto...
Ciao Luca,
io l'ho testata sul tuo file e funziona. Prima di fare qualsiasi implementazione l'hai eseguita anche tu, così com'è? La macro può essere eseguita separatamente dal tuo codice e non necessità di alcuna implementazione se i dati sui quali va a lavorare sono quelli del file di esempio.
Risposta 1. No.
Risposta 2. Non viene avviato nessun loop di gestione errori essendo esternamente al ciclo For/Next. La questione non è così semplice e per approfondire l'argomento, ti invito a leggere questo ottimo wiki.
Una volta verificato il corretto funzionamento sarò a disposizione per commentarlo e spiegare le parti che non ti sono chiare.
Andrea.