Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
112to116
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
112to116
112to116
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Formel Sverweis in VBA

Formel Sverweis in VBA
11.04.2002 14:27:49
Marko Albrecht
Hallo,
ich hoffe mir kann bei meinem, nachfolgend beschriebenen, Problem geholfen werden.

Das Problem ist , daß in der nachstehenen Formel(Wenn, Istfehler, Sverweis) VBA ein Hochkomma in die Formel schreibt und die Formel dadurch nicht Ihre Funktion erfüllt.

Die Bezugszelle der Formel Sverweis wird sozusagen in Hochkommata gesetzt, nur das Exel dann die Formel nicht richtig erkennt.

VBA Formel:

essen = 12
For i = 6 To 150 Step 1
Range("D" & i).Select
ActiveCell.Formula = "=IF(ISERROR(VLOOKUP(B" & i & ",'[Shop_VK-Zahlen 03.04.02.xls]Tabelle1'!R1C2:R82C70," & essen & ",FALSE)),0,VLOOKUP(B" & i & ",'[Shop_VK-Zahlen 03.04.02.xls]Tabelle1'!R1C2:R82C70," & essen & ",FALSE))"
Next i


Excel Formel:
=WENN(ISTFEHLER(SVERWEIS('B6';'[Shop_VK-Zahlen 03.04.02.xls]Tabelle1'!$B$1:$BR$82;12;FALSCH));0;SVERWEIS('B6';'[Shop_VK-Zahlen 03.04.02.xls]Tabelle1'!$B$1:$BR$82;12;FALSCH))


Vielen Dank im Vorraus.

Marko Albrecht

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

Betreff
Datum
Anwender
Anzeige
Re: Formel Sverweis in VBA
11.04.2002 15:12:53
Benoit
Hast Du probiert, diese Hochkommas zu "sondern":

statt

ActiveCell.Formula = "=IF(ISERROR(VLOOKUP(B" & i & ",'[Shop_VK-Zahlen 03.04.02.xls]Tabelle1'!R1C2:R82C70," & essen & ",FALSE)),0,VLOOKUP(B" & i & ",'[Shop_VK-Zahlen
03.04.02.xls]Tabelle1'!R1C2:R82C70," & essen & ",FALSE))"

ActiveCell.Formula = "=IF(ISERROR(VLOOKUP(B" & i & "," & "'" & [Shop_VK-Zahlen 03.04.02.xls]Tabelle1" & ""' & "!R1C2:R82C70," & essen & ",FALSE)),0,VLOOKUP(B" & i & "," & "'" & "[Shop_VK-Zahlen
03.04.02.xls]Tabelle1" & "'" & "!R1C2:R82C70," & essen & ",FALSE))"
ich gebe zu, es sieht übel aus,
aber dann werden diese Hochkommas separat interpretiert.

Vielleich muss Du sogar die Hochkomma doppeln: "''" (hier mit Leerzeichen dazwischen zu richtig verstehen: " ' ' ")

Viel Spass beim probieren
Benoit

Anzeige
Re: Formel Sverweis in VBA
11.04.2002 15:20:42
Marko Albrecht
Hallo Benoit,

ich glaube Du hast mich falsch verstanden oder ich drück mich nicht richtig aus.

Die Hochkammata um die es geht sind die, die (siehe Exel Formel) vor und hinter der Zellenbezeichnung ...Sverweis('B6'... stehen.
Diese Hochkammata verhindern das korrekte arbeiten der Formel.

trotzdem Vielen Dank für Deine Hife

MArko Albrecht

Re: Formel Sverweis in VBA
11.04.2002 15:55:15
Alan Hathway
Das ganze habe ich nicht verstanden - gebe ich zu, aber der Ansatz von Benoit ist m.E. doch richtig

Du sagst

Excel Formel:
=WENN(ISTFEHLER(SVERWEIS('B6'; ...............

Aber Du schreibst

ActiveCell.Formula = "=IF(ISERROR(VLOOKUP(B" & i & ",......

Dann fehlt Dir mit Sicherheit ein Hochkomma (oder wie das Ding heisst) nach VLOOKUP( und vor B

Kuck es Dir hochmals genau an.
(Wenn Du ein " in einem Feld/Formel brauchst, musst Du doppeln

ActiveCell.Value="ABC""DEF" produziert ABC"DEF (Achte auf der Anzahl von ")

Alan Hathway

Anzeige
Re: Formel Sverweis in VBA
11.04.2002 16:04:07
Marko Albrecht
Hallo Alan,

Ihr habt alle beide recht aber es geht nicht um die Anführungszeichen " sondern um die Hochkommata '.

ActiveCell.Formula = "=IF(ISERROR(VLOOKUP(B" & i & ",......

das B hinter der Klammer ist die Spalte
das i liefert die Zeile über eine Schleife

Falsche Excel Formel =WENN(ISTFEHLER(SVERWEIS('B6'; ...............
Richtige Excel Formel =WENN(ISTFEHLER(SVERWEIS(B6; ...............

vielen Dank

Gruss
Marko Albrecht

Re: Formel Sverweis in VBA
11.04.2002 16:08:48
Maik
Hi

sollte dann gehen
ActiveCell.Formula = "=IF(ISERROR(VLOOKUP(" & Chr(66) & i & "," & Chr(39) & "[Shop_VK-Zahlen 03.04.02.xls]Tabelle1" & Chr(39) & "!R1C2:R82C70," & essen & ",FALSE)),0,VLOOKUP(" & Chr(66) & i & "," & Chr(39) & "[Shop_VK-Zahlen 03.04.02.xls]Tabelle1" & Chr(39) & "!R1C2:R82C70," & essen & ",FALSE))"
gruss maik

Anzeige
Re: Formel Sverweis in VBA
11.04.2002 16:20:06
Benoit
Meine Gute! Ich habe ja wohl etwas übersehen!

Deine Formel verweist auf 2 verschiedene Zellenbeschreibungen:
erstens das "RC"-Modell, das vom Aufzeichnung des Makros vergeben wurde,
und zweitens das "A1"-Modell, das von Dir eingetragen wurde.
Und genau da, nehme ich an, liegt das Problem.

Statt ...B" & i & "...
Schreibe eher ...R" & i & "C2" & "...
um den "RC"-Modell zu verfolgen.

Dann sollten keine Hochkommatas mehr erscheinen.

Viel Spass beim Probieren
Benoit

Benoit weiß bescheid :-)
11.04.2002 16:38:58
Maik
.
Re: Formel Sverweis in VBA
11.04.2002 16:58:29
Marko ALbrecht
Hallo Benoit,

VIELEN DANK,daß war es, jetzt funktioniert die Formel.

Du weisst bestimmt auch wie ich mit R...C... eine Zelle direkt ansprechen kann, äquivalent dem Range Befehl?


Nochmals vielen Dank

Marko Albrecht


Anzeige
Re: Formel Sverweis in VBA
11.04.2002 17:20:37
Benoit
Das RC-Beschreibungsmodell (Row-Column) ist ein Mischung von relativ und absolute Adressierung, wird aber nur im Application.formulaR1C1 verwendet

R1C1 zielt auf der Zelle A1 der Tabelle oder des definiertes Bereiches, zum Beispiel die selektierte Zelle,
R[1]C1 zielt auf der Zelle der erste Spalte und nächste Zelle der Tabelle oder des definiertes Bereiches,
RC[1] zielt gleiche Zeile, nächste Spalte,
usw.

Viel Spass beim Probieren
Benoit

329 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige