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

Forumthread: VBA-Anfaenger Frage bzgl If-Then Abfrage

VBA-Anfaenger Frage bzgl If-Then Abfrage
03.04.2006 15:22:11
JMR
Hallo wertes Forum!
Mein Code funktioniert leider nicht:-( Da ich VBA-Neuling bin, weiss ich nicht wie es richtig heissen muesste und habe bisher vielleicht auch falsch gesucht...
In Spalte H soll geprueft werden, ob andere Waehrungen ausser € vorkommen, wenn ja macht darauf dann eine MSG-Box aufmerksam :
Sub Waehrungstest() Dim Valuta As Variant Valuta = Range("H:H") If Not Valuta Is € Then MsgBox "Wechselkurse pruefen!" End Sub
Bitte, bitte helft mir, ich werde das Gefuehl nicht los, dass ich hier ganz daemlich etwas falschmache...:-(
Gruss,
Jan
Anzeige

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA-Anfaenger Frage bzgl If-Then Abfrage
03.04.2006 15:50:31
Peter
Servus,
das Problem ist nicht nur die If Abfrage, sondern erstmal das einlesen der Werte.
Eine Frage liegen die Währungen als Format oder als String vor ?
MfG Peter
AW: VBA-Anfaenger Frage bzgl If-Then Abfrage
03.04.2006 16:02:54
JMR
Hallo Peter,
die Waehrungen werden ueber eine Index(...Vergleich(...))-Funktion aus anderer Tabelle in Spalte H uebernommen. Mit den Begriffen Format und String kann ich leider nichts anfangen...
Gruss,
Jan
Anzeige
AW: VBA-Anfaenger Frage bzgl If-Then Abfrage
03.04.2006 16:27:15
Peter
Servus,
dann versuchen wir es anders. Steht bei dem Formelergebnis z.b. 12,00 € oder nur €?
Mit Format ist das Format der Zelle gemeint, also als Währung formatiert oder nicht?
MfG Peter
AW: VBA-Anfaenger Frage bzgl If-Then Abfrage
03.04.2006 16:35:34
JMR
Hallo,
nu hab ich verstanden! Die Formel liefert nur €, LGS, FRS und $ und nicht als Waehrung formatiert, sondern bisher als... Zahl (! :-)).
Gruss,
Jan
Anzeige
AW: VBA-Anfaenger Frage bzgl If-Then Abfrage
03.04.2006 16:44:24
Peter
Servus,
wenn ich dich richtig verstehe und da bin ich mir noch nicht sicher, dann müsste das schon reichen.
Sub tttt() If Application.WorksheetFunction.CountIf(Sheets("Test").Range("A:A"), "€") - _ Application.WorksheetFunction.CountA(Sheets("Test").Range("A:A")) <> 0 _ Then MsgBox "Falsch" End Sub
MfG Peter
Anzeige
AW: VBA-Anfaenger Frage bzgl If-Then Abfrage
03.04.2006 17:11:11
JMR
Hallo,
habs mal entsprechend angepasst und es wird leider immer die MsgBox angezeigt:

Sub Test()
If Application.WorksheetFunction.CountIf(ActiveSheet.Range("H2:H600"), "€") - _
Application.WorksheetFunction.CountA(ActiveSheet.Range("H2:H600")) <> 0 _
Then MsgBox "Falsch"
End Sub

ActiveSheet, da diese Pruefung in einer durch Makro neu erstellten Arbeitsmappe stattfindet, die der Anwender noch benennen muss (Sheetname noch unbekannt). Den Range, da in H1 noch Beschriftung steht, wobei ich mir aber nicht sicher bin ob ich verstanden habe was dein Code so tut...
Er zaehlt erst die Haeufigkeit von "€" und zieht davon etwas ab? Aber was?
Nochmal zur Verdeutlichung meines Probs:
In Spalte H soll geprueft werden, ob andere Waehrungen ausser € vorkommen. Die Regel ist €. Kommt z.B. $ vor oder LGS (£), egal an welcher Stelle und wie oft, soll die MsgBox darauf hinweisen : "Wechselkurs beachten!"
Uebrigends : Veilen Dank Peter fuer Deine Bemuehungen!!
Gruss,
Jan
Anzeige
AW: VBA-Anfaenger Frage bzgl If-Then Abfrage
03.04.2006 17:46:06
Peter
Servus,
funktionieren müsste es eigentlich schon, da die mit € gefüllten Zellen nur von den Gesamtgefüllten Zellen abgezogen werden. Siehe:
Test
 AB
6€ 
7€ 
8€ 
9€ 
10$-1
Formeln der Tabelle
B10 : =ZÄHLENWENN(A5:A10;"€")-ANZAHL2(A5:A10)
 
Diagramm - Grafik - Excel Tabellen einfach im Web darstellen    Excel Jeanie HTML  3.0    Download  
MfG Peter
Anzeige
Erledigt m.T.
03.04.2006 18:06:38
JMR
Hallo,
"da die mit € gefüllten Zellen nur von den Gesamtgefüllten Zellen abgezogen werden"
aha, daher hat dein Code anscheinend auch die formatierten Zellen gezaehlt, auch wenn nichts drinstand...?! Erstaunlich eigentlich.
So richtig verstehen tue ich das jedoch nicht, weshalb du hier eine Subtraktion durchfuehren wolltest.
Aber wie zuvor geschrieben, ich hab ja ne Loesung gefunden... Danke !
MfG,
JAn
Anzeige
AW: Erledigt m.T.
03.04.2006 18:11:38
Peter
Servus,
naja damit du eben nicht jede Währung abfragen musst.
Summe an € Zeichen - Summe an gefüllten Zellen ergibt entweder 0 bei nur Euro oder eben + bzw. - 0.
Hauptsache du hast es jetzt.
MfG Peter
Zusatzinfo
03.04.2006 17:43:10
JMR
Hallo,
Ich habe deinen Code mittlerweile noch ein wenig ausprobiert.
Ganz Jungfraeulich verwendet (d.h. mit deiner Sheetbezeichnung und deinem Range ("A:A") ohne Ueberschrift Spalte A) funktioniert er.
Im eigentlich entstehenden Sheet, das diverse formatierte Zeilen aufweisst (Kopie aus Pivot-Tab.) funktioniert die Sache nur, wenn ich den Range auf die unformatierten Zeilen beziehe... hoffe das war verstaendlich?
Gruss,
Jan
Anzeige
Loesung gefunden, fast erledigt m.T.
03.04.2006 17:59:28
JMR
Hallo Peter,
habe eine Loesung mit Hilfe deines Codes gefunden:

Sub test2()
If Application.WorksheetFunction.CountIf(Sheets("Macfarlan1").Range("H2:H600"), "$") <> 0 _
Then MsgBox "Falsch"
End Sub

Ich bin dann nur gezwungen, jede NICHT-€-Waehrung die vorkommen kann, getrennt abzufragen. Aber das stoert mich nicht weiter (bisher zumindest;-))
Vielen Dank fuer deine Hilfe!!
Gruss,
Jan
P.S.: Wenn du mir noch erklaeren wuerdest was du da abziehen wolltest/was eigentlich dein Code getan hat, waere ich Dir dankbar. Ich moechte noch dazulernen:-)
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
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