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

Vorratliste in Excel aktualisieren/synchronisieren

Vorratliste in Excel aktualisieren/synchronisieren
25.09.2015 09:58:48
Tedris
Hallo Zusammen,
nach stundenlanger Recherche bleibt mir leider nichts anderes mehr übrig als mich an euch zu wenden.
Meine Excel Kentnisse sind eigentlich nicht so schlecht, jedoch kenne ich mich nicht gut mit VB oder Makros aus.
Folgende Aufgabenstellung:
Es gibt eine Masterliste in der Artikel inklusive Parameter eingepflegt sind. z.B. Artikelnr. | Typ | Bezeichnung | Preis | Variante | ...
Eine zweite Liste wird immer aktuell aus dem System exportiert und soll mit der Masterliste synchronisiert werden. Diese zweite Liste hat denselben Spaltenaufbau wie oben.
Nun soll folgendes passieren. Ein Skript/Makro soll sich die zweite Liste anschauen und Artikel welche neu hinzugekommen sind an die Liste anfügen. Artikel welche in der zweiten
Liste nicht mehr auftauchen sollen in der Masterliste rot markiert werden (Ausfüllung oder Schriftfarbe). Bei übereinstimmenden Artikeln (also in beiden Listen vorhanden) soll nichts passieren.
Nun habe ich lange mit =VERGLEICH() und =VERWEIS herumexperimentiert jedoch leider zu keinem Ergebniss gekommen.
Ich hoffe ihr könnt mir hierbei eine Hilfestellung geben.
Vielen Dank im Voraus

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Vorschlag bei VBA
25.09.2015 10:18:02
Tino
Hallo,
Vorschlag bei VBA Nein
zwei Beispieldateien aufbauen (Masterliste und die 2.) und
diese als Zip-File hier Hochladen u. rein stellen.
Gruß Tino

AW: Vorschlag bei VBA
28.09.2015 07:14:40
Tedris
Es muss nicht unbedingt in zwei Dateien sein, es gehen auch zwei Sheets.
Ein Beispiel wie es erfolgen soll habe ich Manuell mal gemacht, siehe Dateianhang.
https://www.herber.de/bbs/user/100433.xlsx

Anzeige
AW: ok. wenn du meinst dies reicht ...
29.09.2015 08:20:15
Tedris
Hallo Tino,
erstmal vielen Dank für deine Hilfe das scheint sehr gut zu funktionieren.
Wie ich deinen Code verstanden habe (als Laie) vergleicht dieser den Inhalt aus Spalte A , also der Artikelnummer. Wäre es auch möglich bspw. den Vergleich in Spalte C durchzuführen also der Bezeichnung? Vielen Dank im Voraus

AW: ok. wenn du meinst dies reicht ...
29.09.2015 17:39:07
Tino
Hallo,
ersetze den kompletten Code durch diesen.
In varSpalte = "C" kannst du die Spalte angeben.
Option Explicit

Sub Start()
Dim oWBM As Workbook, oWBL As Workbook, SHCopy As Worksheet
Dim TabNameM$, TabNameL$
Dim rngM As Range, rngL As Range, rngTmp As Range, rngTmp2 As Range
Dim strFormel$, varSpalte

varSpalte = "C"

Set oWBM = ThisWorkbook
Set oWBL = ThisWorkbook

TabNameL = "Stückliste_alt"
TabNameM = "Stückliste_import"

varSpalte = Worksheets(1).Columns(varSpalte).Column
'Datenbereich Masterliste 
With oWBM.Sheets(TabNameM)
    Set rngM = .Range("A2", .Cells(.Rows.Count, 1).End(xlUp)).Resize(, .UsedRange.Columns.Count)
    Set rngTmp = rngM.Columns(1).Offset(, .Columns.Count - 1)
End With

'Datenbereich Liste 
oWBL.Sheets(TabNameL).Copy After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
Set SHCopy = ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
With SHCopy
    Set rngL = .Range("A2", .Cells(.Rows.Count, 1).End(xlUp)).Resize(, .UsedRange.Columns.Count)
    rngL.Interior.ColorIndex = 0
End With

strFormel = "=IF(CountIF(" & rngL.Columns(varSpalte).Address(1, 1, xlR1C1, 1) & ",RC" & varSpalte & ")=0,1,"""")"
rngTmp.FormulaR1C1 = strFormel

On Error Resume Next
Set rngTmp2 = rngTmp.SpecialCells(xlCellTypeFormulas, 1)

If Not rngTmp2 Is Nothing Then
    rngTmp2.EntireRow.Copy rngL.Cells(rngL.Rows.Count, 1).Offset(1, 0)
    rngL.Cells(rngL.Rows.Count, 1).Offset(1, 0).Resize(rngTmp2.Rows.Count, rngM.Columns.Count).Interior.Color = RGB(146, 208, 80)
End If
rngTmp.EntireColumn.Delete

With oWBL.Sheets(TabNameL)
    .Columns(.Columns.Count).Delete
    Set rngTmp = rngL.Columns(1).Offset(, .Columns.Count - 1)
    strFormel = "=IF(CountIF(" & rngM.Columns(varSpalte).Address(1, 1, xlR1C1, 1) & ",RC" & varSpalte & ")=0,1,"""")"
    rngTmp.FormulaR1C1 = strFormel

    Set rngTmp2 = rngTmp.SpecialCells(xlCellTypeFormulas, 1)
    
    If Not rngTmp2 Is Nothing Then _
        rngTmp2.Offset(, -(.Columns.Count - 1)).Resize(, rngL.Columns.Count).Interior.Color = RGB(252, 91, 0)
    
    rngTmp.EntireColumn.Delete
End With

End Sub
Gruß Tino

Anzeige
AW: ok. wenn du meinst dies reicht ...
01.10.2015 09:31:38
Tedris
Werde ich morgen direkt mal testen,
vielen lieben Dank schonmal!

AW: Vorratliste in Excel aktualisieren/synchronisieren
28.09.2015 07:16:43
Tedris
Es muss nicht unbedingt in zwei Dateien sein, es gehen auch zwei Sheets.
Ein Beispiel wie es erfolgen soll habe ich Manuell mal gemacht, siehe Dateianhang.
https://www.herber.de/bbs/user/100433.xlsx

AW: Vorratliste in Excel aktualisieren/synchronisieren
28.09.2015 07:20:49
Tedris
Es muss nicht unbedingt in zwei Dateien sein, es gehen auch zwei Sheets.
Ein Beispiel wie es erfolgen soll habe ich Manuell mal gemacht, siehe Dateianhang.
https://www.herber.de/bbs/user/100433.xlsx
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige