Condividi:        

SOSTITUZIONE VAOLORI CON MACRO

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

SOSTITUZIONE VAOLORI CON MACRO

Postdi Denny1986 » 22/11/13 19:35

Salve, ho un piccolo dilemma, ho due file in excel

Nel primo c'è una prima colonna dove ci sono dei codici alfanumerici, mentre nella seconda colonna ci sono dei nomi, in questo file i nomi e i codici si ripetono tante volte, ti inoltro un esempio:

Colonna a Colonna b

A234 Mary
A234 Mary
A234 Mary
B324 Laura
W985 Roberta
W985 Roberta

Il secondo file invece è una leggenda dove ci sono due colonne e mi specifica cosa corrispondono i codici che ho nel primo file. Ti inoltro l esempio

Colonna A Colonna B

A234 Denny
B324 Angelo
W985 Lorenzo

Io vorrei avere questo risultato

Colonna a Colonna B

Denny Mary
Denny Mary
Denny Mary
Angelo Laura
Lorenzo Roberta
Lorenzo Roberta

Mi risulta impossibile fare il copia in colla in quanto i dati non sono in ordine e inoltre ci sono delle ripetizioni, attualmente sto facendo trova e sostituisci solo che i dati sono tanti circa 2000 codici-righe.

Potresti gentilmente aiutarmi per velocizzare il tutto con una macro o altro.

Grazie

Per la disponibilità
Denny1986
Utente Junior
 
Post: 10
Iscritto il: 20/11/13 00:37

Sponsor
 

Re: SOSTITUZIONE VAOLORI CON MACRO

Postdi Flash30005 » 23/11/13 04:12

Se non comporta complicazioni sarebbe opportuno avere i due elenchi in un file ma su due fogli diversi (esempio: Foglio1 elenco con codice e nome e Foglio2 codici e altri nomi).
Con questa macro avrai i due nomi corrispondenti allo stesso codice nel foglio3
Codice: Seleziona tutto
Sub CompilaNC()
Application.ScreenUpdating = False
Application.Calculation = xlManual
Set Ws1 = Worksheets("Foglio1")
Set Ws2 = Worksheets("Foglio2")
Set Ws3 = Worksheets("Foglio3")
Ws3.Cells.Clear
UR1 = Ws1.Range("A" & Rows.Count).End(xlUp).Row
UR2 = Ws2.Range("A" & Rows.Count).End(xlUp).Row
For RR1 = 2 To UR1
Cod1 = Ws1.Range("A" & RR1).Value
    For RR2 = 2 To UR2
    Cod2 = Ws2.Range("A" & RR2).Value
    If Cod1 = Cod2 Then
    UR3 = Ws3.Range("A" & Rows.Count).End(xlUp).Row + 1
    Ws3.Range("A" & UR3).Value = Ws2.Range("B" & RR2).Value
    Ws3.Range("B" & UR3).Value = Ws1.Range("B" & RR1).Value
    End If
    Next RR2
Next RR1
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
End Sub


La prima riga la considero come testata quindi la macro processerà dalla riga 2 in poi

ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: SOSTITUZIONE VAOLORI CON MACRO

Postdi Denny1986 » 23/11/13 12:16

Niente purtroppo non funziona
Denny1986
Utente Junior
 
Post: 10
Iscritto il: 20/11/13 00:37

Re: SOSTITUZIONE VAOLORI CON MACRO

Postdi Anthony47 » 23/11/13 17:21

Secondo me dovresti usare la funzione Cerca.Vert per riportare in colonna C del file1 il contenuto del file legenda.
Se serve aiutino sulla relativa formula, allora dovresti precisare se parli di Foglio1 e Foglio2 dello stesso file oppure di File1 e File2; in questo secondo caso quale e' il nome del file e del foglio che contiene la "legenda".

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


Torna a Applicazioni Office Windows


Topic correlati a "SOSTITUZIONE VAOLORI CON MACRO":


Chi c’è in linea

Visitano il forum: Nessuno e 57 ospiti