Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Excel VBA Wert von 4 Zellen prüfen wenn Wahr dann Makro GO
#1
Question 
Hallo liebe Excel Community,

ich habe folgendes Problem:
Der Grundgedanke war das ich die Überschriften einiger spalten Prüfe und erst danach mein Makro fortsetze.
Dies dient als Kontrolle falls sich die Spalten verschieben oder neue hinzugefügt werden.
Nun würde ich dies gerne ohne eine extra Formel in der Datei selbst verwirklichen.
Eine Formel um dies abzudecken hätte ich bereits schon jedoch weis ich nicht ob man in VBA selbst eine Formel auf WAHR prüfen kann.


Code:
Die Formel:
=WENN(UND(AU10="quantity
returns
(for stock)
pcs.";AV10="quantity
returns
(for tracking)
pcs.";AW10="quantity
stock

pcs.";AY10="quantity
delivered
actual
pcs.");WAHR;FALSCH)


Man sieht das mit Alt+Enter einige Textumbrüche eingefügt wurden.
Nun möchte ich wenn die Formel WAHR ergibt das Makro ausgeführt wird.

Kann mir hierbei jemand helfen?

Viele Grüße!
Antworten Top
#2
Hallo, 19 

das geht mit "Evaluate". Du evaluierst also die Formel in VBA. Ein Beispiel: 21 

In A1 staht "Das ist ein Beispiel". mit der Formel...

Code:
=ISTZAHL(SUCHEN("Beispiel";A1))

... bekomme ich ein "WAHR". In VBA machst du das dann so: 21

Code:
Option Explicit
Public Sub Main()
    MsgBox Application.Evaluate("=ISNUMBER(SEARCH(""Beispiel"",A1))")
End Sub

Da nimmst du statt der MsgBox eine Variable und arbeitest mit der weiter.
________
Servus
Case
[-] Folgende(r) 1 Nutzer sagt Danke an Case für diesen Beitrag:
  • Pascala
Antworten Top
#3
VBA:

Code:
msgbox [AU10]&[AV10]&[AW10]&[AY10]="quantity returns (for stock) pcs.quantity returns (for tracking) pcs.quantity stock pcs.quantity delivered actual pcs."

oder reicht schon:
Code:
Msgbox (left([AU10],8)="quantity")*(left([AV10],8)="quantity") *(left([AW10],8)="quantity") *(left([AY10],8)="quantity")
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
[-] Folgende(r) 1 Nutzer sagt Danke an snb für diesen Beitrag:
  • Pascala
Antworten Top
#4
WOW!

Vielen vielen Dank an beiden. :)
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste