Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Zwei Mappen vergleichen und updaten

Zwei Mappen vergleichen und updaten
15.12.2005 18:42:36
Sieglinde
Hallo!
Habe ein riesiges Problem!
Habe 2 Excel Mappen (Grundmappe1 u. Auszugmappe2) In der Spalte A beider Mappen stehen die gleichen Zahlen. In der Grundmappe1 z. B. die Zahlen A3 = 01 bis A12 = 10. In der Auszumappe2 steht nur ein Teil davon z. B. A1 = 05, A2 = 03, A3 = 9, und A4 = 7.
Nun möchte ich die Zahlen der Auszugmappe2 in der Grundmappe1 suchen und wenn eine Übereinstimmung gefunden wird soll in der Grundmappe1 der Wert der in der Spalte C enthalten ist um den Wert veringert werden der in der Spalte H der Auszugmappe2 steht.
Beispiel:
Auszugmappe2 Zeile3= A3=05 und der Wert in H3=2; eine Übereinstimmung wird gefunden in der Grundmappe1 Zeile7 = A7=05 und in C7 steht der Wert 12.
Nun soll der Wert in C7=12 um den Wert 2=(H3 der Auszugmappe2) verringert werden also neuer Wert = 10.
Wie kann ich das mit VBA lösen?
Bitte um Eure Hilfe
Sieglinde
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Zwei Mappen vergleichen und updaten
16.12.2005 08:01:52
Sieglinde
Guten Morgen!
Habe so etwas ähnliches gefunden, aber dabei wird bei einer Übereinstimmung immer nur der Wert 1 abgezogen. Ich bräuchte es, dass der Wert einer Zelle abgezogen wird.
Kanns aber selbst nicht so abändern.

Sub Vergleich
' Sucht erste leere Zelle in Spalte A (ab A4), das dann minus 1 ergibt die letzte Zeile
' die bearbeitet werden soll.
lngLetzteZeile = Workbooks(strArchivNameXLS).Sheets(strMonatSheets1).Range("A4:A65536").Find( _
What:="", LookIn:=xlValues, LookAt:=xlWhole, _
SearchOrder:=xlByRows, SearchDirection:=xlNext).Row - 1
For lngZeilen = lngErsteZeile To lngLetzteZeile
lnfRowFind = -1
On Error Resume Next
lnfRowFind = Workbooks(strDateiBestand).Sheets(strBestandSheets1).Range("A:A").Find( _
What:=Workbooks(strArchivNameXLS).Sheets(strMonatSheets1).Cells(lngZeilen, 1).Text, _
LookIn:=xlValues, LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False).Row
On Error GoTo 0
If lnfRowFind < 1 Then
MsgBox "Die Hilfsfeld Nr. " & _
Workbooks(strArchivNameXLS).Sheets(strMonatSheets1).Cells(lngZeilen, 1).Text & _
"  ist nicht im Gesamtbestand vorhanden!", vbCritical
Else
With Workbooks(strDateiBestand).Sheets(strBestandSheets1).Cells(lnfRowFind, 18)
If .Value <> "" Then .Value = .Value - 1
End With
End If
Next lngZeilen
End Sub

Kann man das so ändern dass nicht der Wert -1 abgezogen wird sondern der Wert in der Spalte "P" der entsprechenden Zelle der Datei (strArchivNameXLS).
Bitte um Hilfe
Sieglinde
Anzeige
AW: Zwei Mappen vergleichen und updaten
16.12.2005 12:52:16
Frank
Hi
Dann versuch doch mal in der Zeile If .Value "" Then .Value = .Value - 1
das ".Value - 1" durch deinen Zellenwert zu ersetzen.
Irgendwie so: = Worksheets("strArchivNameXLS").).Cells(zeile, 16).Value
16 sollte Spalte "P" sein und Zeile must du entsprechend ändern bzw. berechnen...
Beste Grüße
Frank Weber
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige