Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
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 Lösung erforderlich

VBA Lösung erforderlich
10.09.2020 07:59:36
Robert
Hallo zusammen,
ich bräuchte Hilfe und eine VBA Lösung für diese Situation:
Wir haben zwei Arbeitsblätter AB1 und AB2
Im AB1 stehen Artikelbezeichnung, Anzahl, Preis usw.
Im AB2 werde Daten extern mittels QR erfasst und sollen nach Erfassung gelöscht werden.
Artikelbezeichnung ist in AB1 und AB2 identisch.
Die Angaben (Artikelname) AB1!A! muss mit AB2!A1 abgeglichen werden, um die Anzahl in der Richtigen Zeile in AB1!K! addieren zu können.
Nun soll der Wert aus AB2!C1 zu den Wert im AB1!K! und den passenden Artikel addiert werden.
Die übernommenen Werte müssten in AB1:P! gespeichert werden. Da AB2 eigentlich nur dem Scan dient.
Nach einlesen und der Übernahme und Addition in AB1 soll der Inhalt in AB2 soll das Arbeitsblatt sofort gelöscht werden.
Die Zahlen in AB1!K! müssen jedoch frei editierbar sein.
Grund: Die Liste soll zusätzlich als inventurliste dienen.
Kann mir hier jemand helfen?
Vielen Dank
Robert
https://www.herber.de/bbs/user/140163.xlsx

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Lösung erforderlich
10.09.2020 16:13:58
fcs
Hallo Robert,
Sub Aktualisierung_Lagerbestand()
Dim wksAB1 As Worksheet, wksAB2 As Worksheet
Dim rngAB1 As Range
Dim Zeile As Long, varA, varMenge, bolDelete As Boolean
Set wksAB1 = Worksheets("AB1")
Set wksAB2 = Worksheets(3)
With wksAB2
bolDelete = True
For Zeile = 1 To .Cells(.Rows.Count, 1).End(xlUp).Row
varA = wksAB2.Cells(Zeile, 1).Value
varMenge = wksAB2.Cells(Zeile, 3).Value
If varA = "" Then
MsgBox "Kein Artikel in Zelle A1 von Blat """ & wksAB2.Name & """!"
Else
With wksAB1
Set rngAB1 = .Range("A:A").Find(what:=varA, LookIn:=xlValues, lookat:=xlWhole)
If rngAB1 Is Nothing Then
MsgBox "Artikel " & varA & vbLf & "nicht in Spalte A gefunden"
bolDelete = False
Else
With .Cells(rngAB1.Row, 11)
.Value = .Value + varMenge
End With
.Cells(rngAB1.Row, 16).Value = varMenge
wksAB2.Rows(Zeile).ClearContents
End If
End With
End If
Next
If bolDelete = True Then
Application.DisplayAlerts = False
.Delete
Application.DisplayAlerts = True
End If
End With
End Sub
LG
Franz
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige