Mit VBA Namen in zwei Arbeitsmappe vergleichen und Zellen kopieren
#1

.xls   Rohdaten.xls (Größe: 29,5 KB / Downloads: 2)
.xlsx   Zahlen.xlsx (Größe: 7,99 KB / Downloads: 2) Hallo liebe Forummitglieder,

ich habe hier ein kleines VBA Problem Huh . Ich habe einen automatischen Report in einer Arbeitsmappe mit dem Namen Rohdaten. 
Des Weiteren habe ich eine zweite Arbeitsmappe mit dem Namen Zahlen. In beiden Arbeitsmappen sind Namen.

Nun möchte ich in der Arbeitsmappe Zahlen ein Makro laufen lassen, dass folgendes tut.

Es soll geprüft werden, ob die Namen aus der Arbeitsmappe Zahlen in der Arbeitsmappe Rohdaten vorhanden sind. Wenn ja, soll aus der Mappe Rohdaten der entsprechende Wert aus der Zelle in Spalte L und Spalte AG hinter den Namen in der Arbeitsmappe Zahlen kopiert werden.

Leider kann ich an der Formatierung der Arbeitsmappe Rohdaten nichts ändern, da ich diese so bekomme.

Eventuell hat ja von euch einer eine Idee.

Vielen Dank für eure Hilfe, 

Gruß Mario
Top
#2
Hallo,

versuche diesen Code, der Pfadname muss angepasst werden:


Code:
Sub Mario20160811()
Dim WBQ As Workbook
Dim WBZ As Workbook
Dim rng As Range
sPath = "z:\Foren\" '<<<<<<<<<<<<< anpassen

Set WBQ = Workbooks.Open(sPath & "Rohdaten.xls")
Set WBZ = Workbooks.Open(sPath & "Zahlen.xlsx")

With WBZ.Sheets(1)
   lr = .Cells(Rows.Count, "B").End(xlUp).Row
   For i = 6 To lr
       Set rng = WBQ.Sheets(1).Columns("A:C").Find(.Cells(i, "B"), LookIn:=xlValues, lookat:=xlPart)
       If Not rng Is Nothing Then
           WBQ.Sheets(1).Cells(rng.Row, "L").Copy .Cells(i, "C")
           WBQ.Sheets(1).Cells(rng.Row, "AF").Copy .Cells(i, "D")
       End If
   Next i
End With

Set WBQ = Nothing
Set WBZ = Nothing
End Sub


mfg
Top
#3
Hat super funktioniert, ich danke dir, du bist mein Held  :18:

Schönen Abend noch Gruß Mario
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste