Condividi:        

confronta ed estrai 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

confronta ed estrai dati

Postdi biagiosurace » 07/08/10 10:57

buongiorno
ho testato questo codice estratto da web:

Sub ConfrontaAeDinG()
Dim IntervalloDoveCercare As Range
Dim IntervalloRicerca As Range
Dim RigaDestino As Long
Dim Tot As Double
Tot = 0 'impostiamo il totalizzatore a zero
Set IntervalloDoveCercare = Range(Cells(1, 1), Cells(Rows.Count, 1).End(xlUp)) 'colonna A
Set IntervalloRicerca = Range(Cells(1, 4), Cells(Rows.Count, 4).End(xlUp)) 'ciclo che scorre le celle colonna D
RigaDestino = 1
For Each cell In IntervalloRicerca
If Application.CountIf(IntervalloDoveCercare, cell.Value) = 0 Then 'se il dato nella cella letta non è presente in A
Cells(RigaDestino, 7).Value = cell.Value 'si copia il dato nella colonna G
Cells(RigaDestino, 8).Value = cell.Offset(0, 1).Value 'nella H scriviamo il valore presente nella cella a lato (in E) il dato letto
Tot = Tot + cell.Offset(0, 1).Value 'quindi incrementiamo il totale con questo valore
RigaDestino = RigaDestino + 1
End If
Next
MsgBox Tot 'avvisiamo con un messaggio l'importo totale
End Sub
FUNZIONA BENE ma quando vado a vedere il totale mi va in errore e non capisco perchè ( sto apprendendo adesso i rudimenti vba)
sembrerebbe da ragionamento esatto mah.........
Grazie se qualcuno mi aiuta
biagiosurace
Utente Junior
 
Post: 16
Iscritto il: 20/07/10 07:00

Sponsor
 

Re: confronta ed estrai dati

Postdi Anthony47 » 07/08/10 23:28

Riepilogando:
-hai una macro presa sul web, e la usi per fare una cosa che non dici.
-la esegui e "FUNZIONA BENE", ma quando fai una certa cosa ("quando vado a vedere il totale") fa una cosa imprevista ("mi va in errore") che non riesci a capire.
Forse volevi postare su http://www.ilmago.it :?: ?? :D

Se invece vuoi approfondire un problema di vba allora per cominciare dovresti spiegare (almeno) quale riga va in errore e con quale messaggio di errore.

Ciao
PS: quando scrivi, seleziona il codice della macro e premi il tasto Code, cosi' quello che scrivi non viene interpretato come uno smiley (faccina)
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: confronta ed estrai dati richiamo

Postdi biagiosurace » 08/08/10 11:58

spesso non riesci a capire come porgere le domande.
Mi spiego: Buongiorno
il codice ,che ho postato ,dovrebbe estrarre confrontando due colonne A e D i nominativi che non ci sono nella colonna A non ci sono.
e fin qui tutto va bene,in fatti nella colonna G estrai sia i nominativi che i valori.( questo l'ho verificato escludento la riga sotto evidenziata, appena la rimetto e
va a fare il Tot con la formula:
Tot = Tot + cell.Offset(0, 1).Value
mi indica errore.
Dal ragionamento dovrebbe funzionare ma in realtà non fa la somma nella colonna H:
A B C D E F G H
Nominativi Importi  Nominativi Importi  Nominativi Importi
 Bianchi 782  Rossi 700,5  Cesari € 789,00
 Rossi 500  Bianchi 458,5  Filippi € 500,00
 Verdi 1512,12  Cesari 789  Giudici € 888,88
 Neri 655,1  Neri 632,4 condello € 2.500,00
 Orange 444,78  Filippi 500 merlo € 50,00
 Luci 489,25  Giudici 888,88 corigliano € 230,00
 Pancrazzi 714,15  Pancrazzi 612
 Fluxing 985,02  Verdi 700
 Fluxing 986,02 surace 200
surace 600 condello 2500
merlo 50
corigliano 230 somma??
GRAZIE
biagiosurace
Utente Junior
 
Post: 16
Iscritto il: 20/07/10 07:00

Re: confronta ed estrai dati

Postdi biagiosurace » 08/08/10 12:15

SCUSATE HO DIMENTICATO DI INSERIRE L'IMMAGINE
http://img191.imageshack.us/img191/6580/somma.jpg
biagiosurace
Utente Junior
 
Post: 16
Iscritto il: 20/07/10 07:00

Re: confronta ed estrai dati

Postdi Anthony47 » 08/08/10 20:52

In linea di massima io suggerisco i descrivere
-che cosa si vuole fare
-come hai pensato di farlo
-cosa hai fatto
-che cosa succede
-che cosa pensavi che sarebbe successo
Vale per la prossima volta..

Sempre per la prossima volta, ricordati di rispondere a tutte le domande: non sono volte a invadere la privacy ma sono (le mie) strumentali per la comprensione del problema e quindi per proporre una possibile soluzione. In particolare avrei voluto sapere quale messaggio di errore ti veniva restituito...

Al momento mi sono fatto l' idea che:
-la scritta in D2 e' diversa da quella in A2
-l' errore e' di "tipo dati non corrispondente"
-si verifica quando copi "Importi" in H2, cioe' prima che cominci effettivamente a scrivere nomi e valori da G3:H3 in giu'
Se questo e' il tuo caso allora il tutto succede perche' ovviamente "Importi" non e' un valore numerico; modifica quindi mettendo questa riga al posto della tua originale:
Codice: Seleziona tutto
If IsNumeric(cell.Offset(0, 1).Value) Then Tot = Tot + cell.Offset(0, 1).Value  'quindi incrementiamo il totale con questo valore

Noterai che la somma del totale include anche il valore "5" in testa alla colonna E; per evitare questo errore o modifichi il contenuto di E1 affiche' non sia un valore numerico, oppure modifichi ulteriormente in
Codice: Seleziona tutto
If IsNumeric(cell.Offset(0, 1).Value) And RigaDestino > 1 Then etc etc

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: grazie

Postdi biagiosurace » 09/08/10 07:17

Funziona,
i numeri nella prima riga non esistono l'ho inseriti per verificale le colonne. Tutto a posto, ho visto che la somma dei dati viene fatta in msgbox e non alla fine dei dati estratti ,va bene lo stesso.
Grazie per la tua cortesia e Competenza
Biagio
biagiosurace
Utente Junior
 
Post: 16
Iscritto il: 20/07/10 07:00

Re: confronta ed estrai dati

Postdi Anthony47 » 09/08/10 14:32

Se vuoi il risultato come nell' immagine postata, invece dell' istruzione Msgbox (o in aggiunta) metterai
Codice: Seleziona tutto
cell.Offset(0, 4).Value = Tot

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea


Torna a Applicazioni Office Windows


Topic correlati a "confronta ed estrai dati":


Chi c’è in linea

Visitano il forum: Nessuno e 67 ospiti