Schönen guten Abend zusammen,
ich habe etliche Exceldateien, die immer gleich aufgebaut sind (Spalten + Zellen). Diese ganzen Exceldateien sollen zentral in einer anderen Exceldatei zusammengeführt werden. Um mir die händische Abtipparbeit zu sparen, bin ich im weltweiten Web auf ein Makro gestoßen, was mir schon gute Dienste leistet.
Bei diesem Makro gebe ich definierte Suchbegriffe ein, die dann vom Makro in den jeweiligen Exceldateien gesucht und in die neue Datei geschrieben wird. Jedoch funktioniert dies nur in eine Richtung, nämlich waagrecht oder senkrechte Suchrichtung.
Nun habe ich aber das Problem, dass mancher Begriff senkrecht und mancher Begriff waagrecht gesucht werden muss. Also die Suchrichtung abhängig vom Suchbegriff. Nun weiß ich aber nicht, wie ich dies im Makrocode mit eingeben muss, damit das funktioniert. Evtl. wisst ihr hier weiter.
Hier der bestehende Makrocode:
Sub GetData()
Dim oMe As Object
Set oMe = Workbooks("alle.xls").Worksheets("Tabelle1") 'ZielDatei/-Tabelle (also die gerade geöffnete) ;-)
Const sDateiPfad As String = "C:\Documents and Settings\z563164\Desktop\actualwork\test\test1\" 'Pfad für zu durchsuchende Excel-Dateien; mit Backslash am Ende
Const iSbAnzahl = 3 'Nach 3 Begriffen suchen
Dim sSuchbegriff(iSbAnzahl) As String
sSuchbegriff(1) = "Supplier:"
sSuchbegriff(2) = "Name:"
sSuchbegriff(3) = "Parts No.:"
Dim i As Integer
Dim sWbName As String
Dim rFound As Range
Dim vWert As Variant
Dim iZeile As Integer
iZeile = 2
Dim oFS As Object, oDatei As Object
Set oFS = CreateObject("Scripting.FileSystemObject")
For Each oDatei In oFS.GetFolder(sDateiPfad).Files
sWbName = oDatei.Name
Workbooks.Open (sDateiPfad & sWbName)
For i = 1 To iSbAnzahl
Set rFound = Workbooks(sWbName).Worksheets(1).Range("a1:z100").Find(sSuchbegriff(i), LookIn:=xlValues)
If Not rFound Is Nothing Then
vWert = Cells(rFound.Row, rFound.Column + 2).Value
oMe.Cells(iZeile, i).Value = vWert
End If
Next
Workbooks(sWbName).Saved = True
Workbooks(sWbName).Close
iZeile = iZeile + 1
Next
End Sub
Wäre super, wenn mir jemand helfen könnte....
Danke!
|