Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1780to1784
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA SVERWEIS? Daten selektiern 2 Datein

VBA SVERWEIS? Daten selektiern 2 Datein
18.09.2020 10:54:12
Heininger
Hallo Zusammen,
Kurz zu meiner Person: Ich habe vor kurzem erst mit dem VBA Programmieren angefangen somit sind meine Kenntnisse begrenzt. Da es mein erster Beitrag hier im Forum ist, bitte ich schonmal um Entschuldigung falls mir ein "blöder Fehler" beim Erstellen unterlaufen ist.
Zur Ausgangslage:
Es gibt zwei Exceldatein zum einem die Datei Entnahmebeleg_Forum(https://www.herber.de/bbs/user/140304.xlsm) zum anderem Export_Forum (https://www.herber.de/bbs/user/140303.xlsx).
Die Datei Export_Forum wird täglich neu erstellt und am selben Ort unter dem selben namen abgespeichert.
Die Datei Entnahmebeleg_forum befindet sich am selben ablageort wie die Datei Export_Forum.
Da zur Zeit die Daten manuell aus der Datei Export_Forum in die Datei Entnahmebeleg_Forum übertragen werden würde ich gerne dies mittels VBA automatisieren.
Im Entnahmebeleg gibt es zur Zeit 4 Reiter. Die Ersten 3 sind für jeweils einen Lieferanten und der letzte dient zum Anmelden in SAP sowie automatischen versenden der erstellten Belege (VBA Code ist erstellt und funktioniert soweit problemlos)
Ziel:
Nun würde ich gern mittels VBA die datei Export_Forum öffnen und darin die Spalte R nach den drei Lieferanten durchsuchen. Wenn es einen Treffer z.B. in Zelle R1(Lieferant) gibt soll die dazuggehörige Zelle in Spalte A1(Material) sowie Spalte I1 (Menge in Erfass) in die Datei Entnahmebeleg_Forum in den für den Lieferanten erstellten Reiter übertragen werden. Materialnummer jeweils in spalte A und die Menge in Spalte C . Es kann sein dass die selbe Materialnummer meherer Male in der Export Datei vorkommt. Die Mengen müssen zwar nicht zusammengezählt werden jedoch sollen sie alle aufgelistet werden.
Ich erwarte natürlich nicht, dass jemand den ganzen Code für mich erstellt, jedoch wäre ich für eine Weisung welche Funktionen ich zumindest benutzen soll, dankbar. Ich bin etwas überfordert ob ich hier mit SVerweis / Index oder was auch immer arbeiten muss.
Falls ich noch etwas nicht ganz klar sein sollte beschreibe ich das problem gern genauer.
Ich bedanke mich schonmal im Vorraus für eure Hilfe!

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA SVERWEIS? Daten selektiern 2 Datein
18.09.2020 14:53:11
fcs
Hallo Heininger,
nachfolgend ein Makro zur Durchführung des Imports in die Belegblätter.
Das Makro fügst du am besten in einem allgemeinen Modul deiner Datei ein.
Hinweis:
Wenn du hier den Link zu einer hochgeladenen Datei in deiner Frage/Antwort einfügst, dann musst du vor und nach dem Link ein Leerzeichen einfügen oder den Link in einer separaten Zeile einfügen.
Der Link kann sonst nicht per Mausklick angesteuert werden.
LG
Franz

Sub prcImport_aus_Export_Datei()
Dim wkbBeleg As Workbook, wkbExport As Workbook
Dim wksBeleg As Worksheet, wksExport As Worksheet
Dim zeile_B As Long, Zeile_E As Long
Dim varLieferant
If MsgBox("Jetzt Daten aus der Export-Datei in die Belegblätter übertragen?", _
vbQuestion + vbOKCancel, _
"I M P O R T   A U S    E X P O R T - D A T E I") = vbCancel Then Exit Sub
Set wkbBeleg = ThisWorkbook
'Export-Datei schreibgeschützt öffnen
Set wkbExport = Application.Workbooks.Open(Filename:=ThisWorkbook.Path & Application. _
PathSeparator _
& "Export_Forum.xlsx", ReadOnly:=True, addtomru:=False) 'Dateiname ggf. anpassen
Set wksExport = wkbExport.Worksheets(1)
For Each wksBeleg In wkbBeleg.Worksheets
Select Case wksBeleg.Name
Case "Datum->Summe->Drucken"
'Diese Blätter überspringen , ggf. weitere Blattnamen ergänzen gerennt durch Komma
Case Else
'Blätter der Lieferanten
Application.ScreenUpdating = False
With wksBeleg
'zu suchende Lieferantennummer
varLieferant = .Range("B3").Text
'letzte ausgefüllte Zeile im Beleg-Blatt
zeile_B = .Cells(.Rows.Count, 1).End(xlUp).Row
End With
With wksExport
For Zeile_E = 2 To .Cells(.Rows.Count, 1).End(xlUp).Row
If .Cells(Zeile_E, 18).Text = varLieferant Then
'Werte ins Bele
zeile_B = zeile_B + 1
wksBeleg.Cells(zeile_B, 1).Value = .Cells(Zeile_E, 1).Value 'Material
wksBeleg.Cells(zeile_B, 3).Value = .Cells(Zeile_E, 9).Value 'Menge in ErfassME
End If
Next Zeile_E
End With
Application.ScreenUpdating = True
End Select
Next wksBeleg
'Export-Datei wieder schliessen
wkbExport.Close savechanges:=False
End Sub

Anzeige
AW: VBA SVERWEIS? Daten selektiern 2 Datein
21.09.2020 06:58:50
Heininger
Guten Morgen Franz,
Sorry für die späte Antwort, hatte aber leider übers Wochenende nicht so viel Zeit ^^.
Danke für den Hinweis mit den Links, merke ich mir für die Zukunft!
Und VIELEN DANK für den Code. Funktioniert einwandfrei! Dank deiner Beschreibungen schaffe ich es sogar ihn nachzuvollziehen! Einfach Mega ! :D
Wünsche dir noch eine angenehme Woche !

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige