Numerischen Doppelstrisch per vba erkennen

Bild

Betrifft: Numerischen Doppelstrisch per vba erkennen
von: HScliephake
Geschrieben am: 17.10.2015 18:49:08

Hallo,
ich muss numerische Daten aus Tabellen auslesen, die unsere Buchhaltung erstellt hat und als numerische Werte in eine neue Tabelle kopieren.
Das klappt mit meinem Skript gut.
Aber in einigen Tabellen sind statt einer Null zwei Striche:
Cells(14, iReihe1) gibt den Wert "--" zurück und die Prüfung mit
If IsNumeric(Cells(14, iReihe1).Value) = True Then
gibt den Wert Wahr zurück.
Dies produziert in meinem Skript den Laufzeitfehler 13 "Typen unverträglich"
In meiner Recherche bin ich soweit gekommen, dass es sich um eine Buchhaltungsformatierung für eine Null handelt.
Ich finde keine Lösung, die Sache abzufangen und die neue Tabelle einen Nullwert zu schreiben.
Ginge das nur über ein "on Error Goto" oder gibt es eine andre Lösung?

Bild

Betrifft: AW: Numerischen Doppelstrisch per vba erkennen
von: Sepp
Geschrieben am: 17.10.2015 19:11:51
Hallo ?,
baue einfach noch eine Prüfung ein.


If IsNumeric(Cells(14, iReihe1).Value) = True Then
  If Cells(14, iReihe1) = "--" Then
    'Mach was
  Else
    'Mach was Anderes
  End if
End if
Gruß Sepp


Bild

Betrifft: AW: Numerischen Doppelstrisch per vba erkennen
von: HScliephake
Geschrieben am: 17.10.2015 19:35:50
Hallo Sepp,
danke für die schnelle Antwort.
Das hatte ich vergessen zu erwähnen, dass auch diese Prüfung
If Cells(14, iReihe1) = "--" Then
vorher auch nicht zum Erfolg geführt hat. Ich nehme an, dass dies an dieser numerischen Formatierung liegt.
Wie Du an dem Bild der Tabelle siehst
Userbild
stehen die Doppelstriche in Zeile 14 auf der rechten Seite und in Zeile 17 links. In Zeile 17 sind sie als Zeichen über eine Formel reingeschrieben worden.
In Zeile 14 ist es meines Erachtens eine Formatierung aus der Buchhaltung für eine leere Zelle oder eine Null. Genau weiß ich das aber nicht. Und da liegt mein Problem.
Gruß
Holger

Bild

Betrifft: AW: Numerischen Doppelstrisch per vba erkennen
von: ransi
Geschrieben am: 17.10.2015 19:56:20
HAllo Holger,
Dann prüf den Text.
Versuch mal:
If Cells(14, iReihe1) like "*--*" Then
ransi

Bild

Betrifft: If Cells(14, iReihe1).text like "*--*" Then...?
von: ransi
Geschrieben am: 17.10.2015 19:57:00
HAllo Holger,
Dann prüf den Text.
Versuch mal:
If Cells(14, iReihe1).text like "*--*" Then
ransi

Bild

Betrifft: AW: If Cells(14, iReihe1).text like "*--*" Then...?
von: HScliephake
Geschrieben am: 17.10.2015 20:26:25
Hallo ransi,
die Überprüfung des Textes mit If Cells(14, iReihe1).text like "*--*" Then hat zum Erfolg geführt.
Danke.
Gruß
Holger

Bild

Betrifft: offTopic
von: ransi
Geschrieben am: 17.10.2015 20:01:06
Hallo Holger,
Bist du der Holger, der lange Jahre für TSI tätig war ?
Mit O.T. und I.M. und J.W. ??
ransi

Bild

Betrifft: AW: offTopic
von: HScliephake
Geschrieben am: 17.10.2015 20:11:12
Hallo ransi,
ja ich war bei TSI. Die "längsten 3 Monate meines Lebens". ;-)
Jetzt mache ich u.a. Energiemanagement und habe in kurzer Zeit viel über Excel und vba lernen müssen, um Daten dafür neu zusammenstellen zu können.
Gruß
Holger

 Bild

Beiträge aus den Excel-Beispielen zum Thema "Numerischen Doppelstrisch per vba erkennen"