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

Max. Zeichenlänge String

Max. Zeichenlänge String
28.12.2013 11:42:43
Golem
Hallo Excel-Fachleute,
mit nachfolgendem Code vergleiche ich in einem geschlossenen Arbeitsblatt, ob eine Bankleitzahl oder
eine BIC vorhanden ist.
Eine BLZ, in Zelle "AJ12", wird im geschlossenen Tabellenblatt, in Spalte "A", gesucht und bei Übereinstimmung aus der Spalte "D" die neue BIC herausgegeben.
Eine BIC, in Zelle "AC2", wird im geschlossenen Tabellenblatt, in Spalte "D", gesucht und bei Übereinstimmung aus der Spalte "A" die alte BLZ herausgegeben.
Funktioniert auch einwandfrei.
Sub Wert_in_Spalte_vergleichen()
Dim strPfad$, strTabelle$, sSuchbereich1$, sSuchbereich2$, sAusgabe1$, sAusgabe2$
Dim strSuchWert1$, strSuchWert2$
strSuchWert1 = Range("AJ12")
strSuchWert2 = Range("AC2")
' strPfad = ("'C:\Dokumente und Einstellungen\Werner\Desktop\Test\Weitere Dateien\[Kontodaten. _
xlsx]BLZ_BIC'!")
' strPfad = ("'C:\Dokumente und Einstellungen\Werner\Desktop\TestTest\Weitere Dateien\[ _
Kontodaten.xlsx]BLZ_BIC'!")
' strPfad = ("'C:\Dokumente und Einstellungen\Werner\Desktop\TestTestT\Weitere Dateien\[ _
Kontodaten.xlsx]BLZ_BIC'!")
' Dateipfad und Dateiname
strPfad = "'" & ActiveWorkbook.Path & "\" & "Weitere Dateien" & "\" & "[Kontodaten.xlsx]"
' Tabellename am ende mit '!
strTabelle = "BLZ_BIC" & "'!"
' Suchbereich1
sSuchbereich1 = Range("A2:A5300").Address(ReferenceStyle:=xlR1C1)
' Ausgabebereich1
sAusgabe1 = Range("D2:D5300").Address(ReferenceStyle:=xlR1C1)
' Suchbereich2
sSuchbereich2 = Range("D2:D5300").Address(ReferenceStyle:=xlR1C1)
' Ausgabebereich2
sAusgabe2 = Range("A2:A5300").Address(ReferenceStyle:=xlR1C1)
On Error Resume Next
Range("AJ16") = ExecuteExcel4Macro( _
"Index(" & strPfad & strTabelle & sAusgabe1 & ",Match(" & strSuchWert1 & "," _
& strPfad & strTabelle & sSuchbereich1 & ",0),1)")
Range("AJ18") = ExecuteExcel4Macro( _
"Index(" & strPfad & strTabelle & sAusgabe2 & ",Match(" & Chr(34) & strSuchWert2 & Chr(34) & _
"," _
& strPfad & strTabelle & sSuchbereich2 & ",0),1)")
End Sub
Ich habe jetzt aber die Situation, dass bei einer gesamten Pfadlänge von >= 98 Zeichen, keine Daten mehr ausgelesen werden.
Obiger Pfad mit "Test", 93 Zeichen, funktioniert. Zweiter Pfad mit "TestTest", 97 Zeichen, funktioniert auch.
letzter Pfad mit "TestTestT", 98 Zeichen, funktioniert nicht mehr.
Solch eine Situation ist mir neu.
Gibt es eine Möglichkeit, ohne die Pfadlänge zu verkürzen, längere Pfadnamen zu verwenden?
Für evtl. Tipps oder Anregungen schon mal besten Dank!
Werner

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Max. Zeichenlänge String
28.12.2013 18:04:24
Luschi
Hallo Werner,
auch wenn es so aussieht, daß 'ExecuteExcel4Macro' einen nackten Mann in die Tasche greifen kann - sprich: es funktioniert, Daten aus tatsächlich geschlossenen Dateien zu lesen; ist es so, das per DDE die Datei für den User unsichtbar geöffnet wird. Dabei sind urstlange Pfade sehr störend. Lese dazu:
http://www.pcwelt.de/ratgeber/Die-Grenzen-des-Windows-Explorers-1208465.html
Der für Dich interessante Teil ist:
subst v: "C:\Dokumente und Einstellungen\Werner\Desktop\TestTest\Weitere Dateien"
Damit definiert man dann den Pfad zur 'geschlossenen Datei so:
strPfad = "'v:\" & "[Kontodaten.xlsx]"
Gruß von Luschi
aus klein-Paris
PS: das virtuelle Laufwerk kann man wieder so entfernen:
subst v: /D
'v' ist dabei ein freier noch nicht vergebener Laufwerksbuchstabe.

Anzeige
AW: Max. Zeichenlänge String
28.12.2013 19:48:00
Golem
Hallo Luschi,
das ist ein toller Vorschlag.
Ich habe mich erst nicht getraut, im Forum diese Frage zu stellen. Ich bin davon ausgegangen, dass nur eine Verkürzung
der Pfadlänge Abhilfe schaffen wird. Deshalb habe ich schon eine Excel_Lösung erstellt.
Morgen werde ich Deinen Vorschlag testen und danach berichten. Zur Zeit helfe ich noch meine Frau beim Kochen.
Einen schönen Abend und bis morgen!
Werner

AW: Max. Zeichenlänge String
29.12.2013 15:32:29
Golem
Hallo Luschi,
wenn ich nach Deinem Vorschlag " subst v: "C:\Dokumente und Einstellungen\Werner\Desktop\TestTest\Weitere Dateien" " so eingebe,
dann wird folgende Mitteilung angezeigt: Fehler beim Kompilieren:
Erwartet: Zeilennummer oder Sprungmarke oder Anweisung oder Anweisungsende.
Gebe ich " subst v:="C:\Dokumente und Einstellungen\Werner\Desktop\TestTest\Weitere Dateien" " so ein, wird keine Mitteilung angezeigt.
Aber bei der Code-Ausführung kommt folgende Mitteilung: Fehler beim Kompilieren:
Sub, Funktion oder Property erwartet.
Ohne Deine Hilfe komme ich nicht weiter!
Werner
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige