Externen zelleninhalt in variable ablegen

nach verzweifelten suchen, werde ich mich nun doch an das forum wenden …
bin ganz neu in vba und hab schwierigkeiten den inhalt einer externen zelle in eine variable abzulegen.

der hintergrund ist der, das eine spalte von datei1.xls mit einer spalte von datei2.xls verglichen & durch fehlende einträge ergänzt wird.

da die werte in datei1.xls jedoch bunt durcheinander gewürfelt sind, habe ich mir gedacht wie folgt durch zu gehen:

ich hole mir durch eine schleife nacheinander die werte aus der spalte von datei2.xls und vergleiche sie jeweils mit jedem eintrag von der spalte aus datei1.xls.
wird der wert nicht gefunden wird mit dem inhalt der zelle aus datei2.xls eine neue zelle am ende befüllt …

ich hoffe wenigstens das mein gedanken gang richtig ist …
jedoch kann ich nicht die zelle aus datei1.xls mit der aus datei2.xls vergleichen.

kann mir vieleicht jemand helfen?

danke im vorraus
ciao

hallo vivan,

am besten dimensionierst du 2 variablen als workbook
diese weist du deinen 2 excel-dateien zu

mit workbook.worksheet("tabelle1) kannst du auf die einzelnen tabellenblätter zugreifen.

und mit workbook.worksheet(„tabelle1“).cells(zeile, spalte) auf die einzelnen zellen

wenn du soweit bist, dürfte es für dich kein größeres problem sein, einzelne werte der beiden excel-dateien abzugleichen

viele grüße

rasta

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

solange ich meine datei aus der ich lesen möchte geöffnet habe funktioniert so einiges.
doch sobal das file geschlossen ist kommt dann z.B. bei der anweisung

metaLabel = Workbooks(„Meta.XLS“).Sheets(„system“).Cells(y, 13).Value

die meldung Index ausserhalb des gültigen bereichs

genauso bei

lastRowMetadata = Workbooks(„Meta.XLS“).Sheets(„system“).Cells(Rows.Count, 11).End(xlUp).Row

ist ja klar weil er nicht drauf zugreifen kann …
kann ich das nicht irgendwie umgehen … das das doch möglich ist?

danke

hallo vivan,

das beide files geöffnet sein müssen, kam in meiner antwort nicht rüber.
du wirst auch nicht drumrum kommen. du könntest es höchstens vor anderen usern verbergen, indem du „application.screenupdating = false“ sagst.

und am ende vom code, natürlich wieder auf true setzen

hoffe es hilft

viele grüße

rasta

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo RASTA,

vielen dank für deine hilfe …
werde es in ruhe mal ausprobieren …
vielen dank trotzdem …

aber ich glaube ich werde noch öfters mal posten …

ciao
wenke

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]