Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
24.04.2024 17:19:09
Anzeige
Archiv - Navigation
952to956
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
952to956
952to956
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Eigenleben von VBA!?

Eigenleben von VBA!?
22.02.2008 15:39:48
VBA!?
Hallo Excel-Profis,
ich verzweifle an einem Phänomen für das ich keine logische Erklärung habe.
Ich nutze VBA um ähnlich der Formel SVerweis eine Spalte nach einer Variablen, die zuvor aus der aktiven Zelle ausgelesen wurde, zu durchsuchen und anschließend aus der entsprechenden Zeile Daten auszulesen. Bei der Variablen handelt es sich um Zahlen zwischen 1 und 1500.
Eigentlich easy.
Es gibt allerdings Werte z.B. 709, 888 die nicht gefunden werden obwohl sie in der zu durchsuchenden Tabelle stehen.
Wenn ich den Programmablauf stoppe, um zu kontrollieren was die Ursache ist, fällt auf, daß in den beschriebenen Fällen die Variable nicht ausgelesen wurde. Sonst tritt der Fehler nicht auf.
Kann mir bitte jemand einen Tipp geben warum im einem Fall eine Zelle in eine Variable ausgelesen wird und in einem anderen nicht - kann das am Inhalt liegen?! Bei 710 klapp's bei 709 nicht!
Für kreative Lösungen wäre ich dankbar.
Danke

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

Betreff
Datum
Anwender
Anzeige
Wo ist der Code? (owT)
22.02.2008 15:46:00
Renee

Wo ist der Code? Hier
22.02.2008 16:07:52
ThomasL

Sub EinlagerungsZeileSuchenPerEinlnummer()
'Vergleiche die Einlagerungsnummer der aktiven Zelle mit der Einlagerungsdatei
'bis die Datensatzzeile mit der entsprechenden Einlagerungsnummer gefunden ist
EinlnummerVergl = ""
Einlnummer = ""
'Variablen werden eingelesen
Einlnummer = Selection.Value
If Einlnummer = "" Then
x = 10000
Else
x = 1
End If
EinlnummerVergl = Workbooks("einlagerungsdatei.xls").Worksheets("einlagerung").Cells(x, 1). _
Value
Do Until EinlnummerVergl = Einlnummer Or x = 10000
x = x + 1
EinlnummerVergl = Workbooks("einlagerungsdatei.xls").Worksheets("einlagerung"). _
Cells(x, 1).Value
Loop
End Sub


Anzeige
AW: Eigenleben von VBA!?
22.02.2008 16:04:09
VBA!?
Hallo Thomas,
bist du ganz sicher, dass es Zahlen sind? Kann es sein, dass es führende/nachfolgende Leerzeichen gibt, die du nicht siehst. Hast du es mit Trim versucht, bevor du mit dem Wert suchen gehst?
Ohne die Mappe zu sehen, ist ein Rat nur 'stochern im Nebel.'
Gruß Peter

An Leerzeichen liegt's nicht aber..
22.02.2008 16:15:05
ThomasL
Hallo Peter,
das ist schon fast die Lösung.
Nach dem klicken in die Zellen, um zu kontrolliern ob ein Leerzeichen versteckt ist, funtioniert es komischerweise.
Woran liegt das?
Und wie könnte eine Lösung aussehen? Ich kann ja schließlich nicht 1200 Zellen durch klicken!
Thx

Anzeige
AW: An Leerzeichen liegt's nicht aber..
22.02.2008 16:19:16
Frage
Hi,
"...Ich kann ja schließlich nicht 1200 Zellen durch klicken!..."
Wieso nicht?

AW: An Leerzeichen liegt's nicht aber..
22.02.2008 16:24:39
ThomasL
Hallo,
das muß dann wohl mein Azubi machen ; )
Aber ma' im Ernst.
Ich habe es gerade mit einem Code und der Funktion Select probiert - klappt nicht!
Man muß wirklich in die Zelle klicken.
Wie kann man das programmieren?

AW: An Leerzeichen liegt's nicht aber..
22.02.2008 16:33:40
Heinz
Hi,
Zellen markieren, Menü Daten, Text in Spalten, sofort Fertigstellen klicken.
mfg heinz

AW: An Leerzeichen liegt's nicht aber..
22.02.2008 16:34:00
Renee
Hi Thomas,
Wenn dich die Blanks sonst nicht stören, versuchs so:

Do Until Val(EinlnummerVergl) = Val(Einlnummer) Or x = 10000


GreetZ Renée

Anzeige
Danke für die Hilfe. (owT)
22.02.2008 16:39:00
ThomasL
.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige