Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1856to1860
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

Mit vba wert in anderes Dokument übertra

Mit vba wert in anderes Dokument übertra
15.11.2021 12:53:49
Christian
Hallo, ich möchte aus einem wareneinkaufsbericht, wenn fehler vorhanden sind, die Anzahl dieser in ein anderes Dokument übertragen. In dem Dokument wo es übertragen werden soll, sind mehrere Lieferanten. Jetzt müsste man das richtige Arbeitsblatt auswählen, dann überprüfen mit welcher zelle der fehler aus dem prüfbericht A12 aus der liste a1 bis v1 übereinstimmt und dann die Anzahl der Fehler D12 in diese Spalte übertragen.
Ich weiß das ist jetzt viel aber ich kenne mich nicht so gut aus und meistens tüftle ich solange rum bis es funktioniert aber das ist mir zu kompliziert.
Vg und danke im voraus

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bitte lade Quell- u. Zielarbeitsmappe hoch
15.11.2021 13:05:28
JoWE
AW: Mit vba wert in anderes Dokument übertra
15.11.2021 14:38:59
JoWE
in A12 sehe ich nichts, was irgendwie mit irgendetwas zu überprüfen wäre?
Den Lieferanten gibt nicht in der zweiten Arbeitsmappe, Sondern nur "Lieferant1", "Lieferant2" usw. ?
AW: Mit vba wert in anderes Dokument übertra
15.11.2021 15:00:54
Christian
Hallo, vielen Dank für die Antwort.
Wenn bei einer WE Kontrolle ein z.b Kritischer Fehler gefunden wird, wird der in A12 eingetragen. Also Fehler1 in A12 Fehler2 in A13 usw. Wenn die Prüfung abgeschlossen ist sollen nun die Fehler, die gefunden wurden den Lieferanten in der anderen Arbeitsmappe übertragen werden. Es soll unter dem Arbeitsblatt des Lieferanten (Lieferant1, Lieferant2..) den richtigen raussuchen und dann die Anzahl der Fehler in der richtigen Spalte reinschreiben.
Also wenn im Prüfbericht in B3 "Lieferant3" steht und in A12 "Fehler2" soll in der Wert von D12 in die Mappe Reklamationsübersicht in das Arbeitsblatt Lieferant3, unter Fehler2 aufgelistet werden. Also in diesem Fall C2. Da aber nicht bei jeder Prüfung die gleichen Fehler auftreten, muss man iwie eine Abfrage machen, damit vba weiß unter welchem Fehler die Stückzahl eingeschrieben werden.
Anzeige
AW: Mit vba wert in anderes Dokument übertra
15.11.2021 19:32:16
JoWE
Hallo Christiabn
hier ein Bsp für den Export des "Fehlers1" laut "A12" und der entspr. Anzahl aus "D12" in die zweite Arbeitsmappe
zum passenden Lieferanten und dort unter die passenden Fehlerspalte (also wieder Fehler1).

Sub exportierenFehler()
'hier mal nur der Fehler1 mit der Anzahl aus D12
'Damit solltest Du doch wohl weiterkommen?
With Sheets("Prüfbericht")
varL = .Range("B3")
KF = .Range("A12")
AnzKF = .Range("D12")
End With
Workbooks.Open Filename:="C:\Users\joche\Desktop\VBA Übungen\Christian 15112021\149147.xlsx"   'ANPASSEN
With Sheets(varL)
lz = .Cells(Rows.Count, 2).End(xlUp).Row
sp = .Cells.Find(What:=KF, After:=.Range("A1"), LookIn:=xlFormulas, _
LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Column
.Cells(lz + 1, sp) = AnzKF
End With
ActiveWorkbook.Close savechanges:=True
End Sub
Gruß
Jochen
Anzeige
AW: Mit vba wert in anderes Dokument übertra
16.11.2021 07:50:58
Christian
Hallo Jochen,
funktionier wunderbar, vielen Dank. Ich wäre nie drauf gekommen. Den Rest kann ich mir mit etwas Geduld schon selber zusammenbasteln.
VG
Chris
AW: Gerne, danke für die Rückmeldung
16.11.2021 09:34:02
JoWE
AW: Gerne, danke für die Rückmeldung
18.11.2021 13:23:25
JoWE
hier ein weiterer Versuch:

Sub exportierenFehler()
Dim mySource As Worksheet
Set mySource = ThisWorkbook.Sheets("Prüfbericht")
varL = mySource.Range("B3")
Workbooks.Open "C:\VBA_temp\149147.xlsx"   'ANPASSEN
For ze = 12 To 23 'anhand Deiner Tabelle1 im Sheet Prüfbericht
With Sheets(varL)
If Left(mySource.Cells(ze, 1), 6) = "Fehler" Then
sp = .Cells.Find(mySource.Cells(ze, 1), .Range("A1")).Column
.Cells(.Cells(Rows.Count, sp).End(xlUp).Row + 1, sp) = mySource.Cells(ze, 4)
End If
End With
Next
ActiveWorkbook.Close savechanges:=True
End Sub

Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige