Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Typenunverträglich

Forumthread: Typenunverträglich

Typenunverträglich
13.01.2005 11:10:44
Torsten
Hallo zusammen,
ich möchte folgenden Code anpassen:
...
For i = 2 To 1002
'i = Range des WS, das durchsucht wird
If Sheets("DATEN").Range("I" & i) = Sheets("SONSTIGE").Range("B2") Then
Sheets("DATEN").Range("B" & i & ":S" & i).Copy _
Destination:=Sheets("SONSTIGE").Range("A" & J)
J = J + 1
End If
und zwar so, daß nicht mehr auf .Range("B2") geprüft wird, sondern auf vorher festgelegte Ziffern:
...
If Sheets("DATEN").Range("I" & i) "ZRE" Or "B2" Or "FV" Then
...
Leider meldet sich Excel mit Typen Unverträglichkeit.
Könnt Ihr mir weiterhelfen?
Vielen Dank im voraus.
Gruß
Torsten
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Typenunverträglich
Harald
Hallo Thorsten,
da liegt der Hase im Pfeffer:
Anders als im umgangssprachlichen Gebrauch kannst Du nicht mit einer IF-Abfrage auf drei Bedingungen prüfen
If Sheets("DATEN").Range("I" & i) &lt&gt "ZRE" Or "B2" Or "FV" Then
~f~
Das bedeutet im Effekt, dass VBA versucht, einen Ausdruck
"ZRE" Or "B2" Or "FV"
auszuwerten. Das muss misslingen, weil man drei Strings nicht so ohne weiteres verodern kann. Also kann die Lösung so aussehen:
~f~
If (Sheets("DATEN").Range("I" & i) &lt&gt "ZRE") Or (Sheets("DATEN").Range("I" & i) &lt&gt "B2") Or (Sheets("DATEN").Range("I" & i) &lt&gt "FV") Then
Oder Du greifst auf ein Select case statement zurück.
Gruß Harald
Anzeige
AW: Typenunverträglich
Torsten
Hallo Harald,
vielen Dank für Deine Rückmeldung.
Excel läuft zwar durch, aber in die Auswertung werden auch die Daten mitkopiert, die ich eigentlich ausschließen wollte (ZRE, B2; FV). Was muß ich denn nun machen, damit Excel das auch umsetzt?
Hast Du eine Idee?
Gruß
Torsten
AW: Typenunverträglich
Martin
Hallo Torsten,
die richtige Syntax wäre
If Sheets("DATEN").Range("I" & i) "ZRE" Or Sheets("DATEN").Range("I" & i) "B2" Or Sheets("DATEN").Range("I" & i) "FV" Then
Logisch ist das aber Unfug, da diese Bedingung immer WAHR ergibt, völlig unabhängig davon, was in der zu prüfenden Zelle steht.
Gruß
Martin Beck
Anzeige
AW: Typenunverträglich
Torsten
Hallo Martin,
vielen Dank für Deine Rückmeldung.
In der Tat, werden in die Auswertung auch die Daten mitkopiert, die ich eigentlich ausschließen wollte (ZRE, B2; FV). Was muß ich denn nun machen, damit Excel das auch umsetzt?
Hast Du eine Idee?
Gruß
Torsten
AND statt OR (oT)
Martin
AW: erledigt - jetzt passt's - Vielen Dank Gruß
Torsten
Torsten
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige