Mi spiego meglio possibile e vi dico che non mastico moltissimo VB
Allora io ho questa situazione: Sulla colonna K di un file pippo.xls
ho diversi codici e sulla colonna L ho il prezzo corrispondente.
In un'altro file pluto.xls sulle stesse colonne ho la stessa cosa, ma
i prezzi nella colonna L sono aggiornati a ottobre 2008.
E' possibile fare una macro che confronta i codici fra le due colonne
dei due file e se li trova mi aggiorna il prezzo nel file pippo.xsl?
Siccome sono un bel pò di codici (4000 o 5000) è stancante farlo con
il trova e copiare il codice corrispondente
Qualcuno mi può aiutare? Grazieeee
"Doc82xXx" <Doc...@gmail.com> ha scritto nel messaggio
news:b4bdac9f-faa0-4701...@t39g2000prh.googlegroups.com...
Ciao,
senza scomodare vba puoi utilizzare la formula:
=CERCA.VERT()
per ricercare il valore riferito al codice.
dai un occhiata alla funzione nella guida...e se non riesci faccelo sapere.
ivano
Si con CERCA.VERT() funziona.. però mi nasce un'altro problema (se
così si può chiamare)!!
Lo descrivo: Una volta aggiornato il codice io copio tutta la riga
(dove oltre a codice e prezzo c'è la descrizione, la quantità e altre
due formule per lo sconto e il prezzo totale),
e la incollo su un'altro file per fare il preventivo secondo i pezzi
che mi servono.. e qui mi copia nella cella prezzo non il valore ma
l'intera formula del CERCA.VERT! Questo potrebbe essere un problema? E
poi mi chiedo.. come fà a memorizzare il valore di risultato nella
formula CERCA.VERT se nella formula stessa ci sono riferimenti ad una
tabella che sta sull'altro file?
Cmq grazie mille :)
Copia
Incolla speciale-Seleziona: Valori
--
---------------------------
Mauro Gamberini
http://www.riolab.org/
Ipotizza di avere le due cartelle aperte Pippo.xls e Pluto.xls. Nelle celle
K1 e L1 dei rispettivi fogli “Foglio1” scrivi rispettivamente “Codice” e
“Importo
L’intervallo da K2 a Kn delle due cartelle deve essere continuo (senza celle
vuote)
Incolla in un Modulo la seguente:
Sub ConfrontaCodici()
Dim IntervPluto As Range, IntervPippo As Range, i As Integer, _
CodArticolo As String, Prezzo As Double, c As Object
Windows("Pluto.xls").Activate
Set IntervPluto = Sheets("Foglio1").Range(("K2"), Range("K2").End(xlDown))
Set IntervPippo = Workbooks("Pippo.xls"). _
Sheets("Foglio1").Range(Workbooks("Pippo.xls") _
.Sheets("Foglio1").Range("K2"), _
Workbooks("Pippo.xls").Sheets("Foglio1") _
.Range("K2").End(xlDown))
For i = 1 To IntervPluto.Rows.Count
CodArticolo = IntervPluto(i)
Prezzo = IntervPluto.Cells(i, 2)
With IntervPippo
Set c = .Find(CodArticolo, LookIn:=xlValues, LookAt:=xlWhole)
If Not c Is Nothing Then
c.Offset(0, 1).Value = Prezzo
End If
End With
Next
Set IntervPluto = Nothing
Set IntervPippo = Nothing
Set c = Nothing
End Sub
> Qualcuno mi può aiutare? Grazieeee
Prego se ci sono riuscito