Clever-Excel-Forum

Normale Version: Vergleich in VBA
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo VBA-Freunde,

ich habe diese Formel in VBA:


Range("M1").FormulaLocal = "=WENN(ISTNV(VERGLEICH(C6;'C:\BUCON\[2015-02-19, Collectingsheet.xlsm]Daten'!$R:$R;0));"""";VERGLEICH(C6;'C:\BUCON\[2015-02-19, Collectingsheet.xlsm]Daten'!$R:$R;0))"

Das funktioniert auf meinem Rechner einwandfrei.
Nun will ich diesen Teil :

C:\BUCON\[2015-02-19,

variabel machen, je nach dem wo der User die Datei speichert.
Z.B.: \\filesrv01\BUCON\2015-02-19,

Der Pfad ist als Variable

PfadCollectingsheet definiert.

Wie kann ich das einbauen?

Vielen Dank für eure Hilfe schon im voraus.

Heinz
Hallo Heinz,

ich würde eine globale Variable für den Pfad definieren und mit "&" den Dateinamen statisch dahintersetzen.

Für mich liest sich das so, daß Du durchaus mehrere Pfadnamen anpeilen willst.
In diesem Fall würde ich durch eine zusätzliche Zählvariable indizieren oder Select Case nutzen.
Hallo Peter,

schön dass der Käpt'n wieder an Bord ist.

Eigentlich ist es immer nur der Pfad zu der Datei "Collectingsheet.XLSM".

Wir haben die User schon "gezwungen" die 4 Mappen im selben Ordner abzulegen, nur wo die liegen weis ich nie.

Deshalb müsste ja mein Vergleich variabel sein, dass ich diese Formel auf der Tabelle anernden kann.

Es sollen alte Daten in eine Datei für weitere Auswertungen genommen werden.

Kannst du mir ein Beispiel für den Vergleich in VBA geben?



Gruß Heinz
Hallo Heinz,

wenn die Dateien alle im selben Ordner abgelegt sind, ist es meines Erachtens noch einfacher zu händeln.
Jedenfalls dann, wenn ich das jetzt halbwegs verstanden habe.

Ich werde gleich Besuch haben. Danach baue ich Dir gerne ein Beispiel zusammen.
Hallo Heinz,

vielleicht bringt dich der Beitrag von Ransi der Lösung näher (Beitrag Nr. 8).
Hallo zusammen,

ich habe es so verstanden, dass Heinz den Pfad schon mit einer andern Prozedur herausfindet und in der Variablen PfadCollectingsheet
ablegt.
Diese Variable will er nun in der Formel unterbringen.

Wenn ich es so richtig verstanden habe, dann ginge das so:


Code:
Sub test()

 Dim PfadCollectingsheet As String
 PfadCollectingsheet = "C:\BUCON\[2015-02-19"
 Range("M1").FormulaLocal = "=WENN(ISTNV(VERGLEICH(C6;'" & PfadCollectingsheet & ", Collectingsheet.xlsm]Daten'!$R:$R;0));"""";VERGLEICH(C6;'" & PfadCollectingsheet & ", Collectingsheet.xlsm]Daten'!$R:$R;0))"

End Sub

Aber noch eine Frage an Heinz.
Da es sich um eine Mappe mit Makros handelt, warum lässt Du die Mappe nicht beim schließen automatisch in einem festgelegten Pfad oder in dem Pfad speichern, aus der die Datei gerade geöffnet wurde?
Hallo Heinz,

ich entschuldige mich dafür, nicht mehr geantwortet zu haben.
Mein Besuch ist recht spät (früh) wieder verschwunden und am nächsten Tag hatte ich einen Arzttermin,
der mich quasi bis jetzt aufgehalten hat. Es ist eben leider momentan so, daß Ärzte über meine Tagesabläufe
bestimmen.
Wenn das Thema für Dich noch nicht abgeschlossen ist. teile bitte den jetzigen Stand der Dinge mit.

Außerdem bin ich inzwischen der Meinung, von der Anfrage nicht alles korrekt verstanden zu haben.
Wenn noch aktuell, dann hätte ich dazu noch einige Verständnisfragen.