Mr. D Geschrieben 24. Mai 2004 Geschrieben 24. Mai 2004 Hi, also ich hab ein kleines problem also ich hab ne If Abfrage die im moment auch funktioniert If zelle.Value >= "208444" And zelle.Value <= "208530" And Not zelle.Value = "208470" And Not zelle.Value = "208471" And Not zelle.Value = 208472 Then So jetzt möchte ich aber die Anweisung: zelle.Value >= "208444" And zelle.Value <= "208530" And Not zelle.Value = "208470" And Not zelle.Value = "208471" And Not zelle.Value = 208472 in einer Variable haben also: Abfrage = zelle.Value >= "208444" And zelle.Value <= "208530" And Not zelle.Value = "208470" And Not zelle.Value = "208471" And Not zelle.Value = 208472 so das funktuioniert aber nicht....er mekert rum "Objekt nicht definiert" woran kann das liegen? Also ganz am Schluss sollte es so aussehen: Abfrage=zelle.Value >= "208444" And zelle.Value <= "208530" And Not zelle.Value = "208470" And Not zelle.Value = "208471" And Not zelle.Value = 208472 ... ... If Abfrage Then ... ...
robotto7831a Geschrieben 24. Mai 2004 Geschrieben 24. Mai 2004 Hallo, ich glaube nicht, dass das geht. Was fĂŒr einen Datentype sollte denn dann die Variable Abfrage haben? Frank
Mr. D Geschrieben 24. Mai 2004 Autor Geschrieben 24. Mai 2004 hmm das weià ich no net ganz sogenau...vielleicht integer oder so,.... naja hintergrund dessen ist das die Abfrage spÀter vom Benutzer selbst verÀndert werden kann ohne das dieser in den Quellcode rein muss. Also das es ne maske gibt die die Variable ausliest -> Benutzer kann Ànderungen machen -> variable einliest und dann halt das was er benutzer eingegeben hat dan abfrÀgt.
-roTekuGeL- Geschrieben 24. Mai 2004 Geschrieben 24. Mai 2004 hmm das weià ich no net ganz sogenau...vielleicht integer oder so,.... naja hintergrund dessen ist das die Abfrage spÀter vom Benutzer selbst verÀndert werden kann ohne das dieser in den Quellcode rein muss. Also das es ne maske gibt die die Variable ausliest -> Benutzer kann Ànderungen machen -> variable einliest und dann halt das was er benutzer eingegeben hat dan abfrÀgt. das ganze geht sicherlich, aber nicht so wie du dir das vorstellst... beschreib doch mal etwas nÀher was der User alles auswÀhlen können soll...
Mr. D Geschrieben 24. Mai 2004 Autor Geschrieben 24. Mai 2004 Ok ich versuchs mal zu erklĂ€ren: So jetzt gibt es ja schon die Abfrage irgendwo im Script, diese Abfrage soll "rausgeholt" werden und dem benutzer in einer Maske angezeigt werden. Danach kann der Benutzer(nachdem er die entsprechende abfrage gewĂ€hlt hat, weil es mehrere sind) diese editieren, heiĂt er kann was hinzufĂŒgen zb. am schluss "and not zelle.value=999" oder was weglöschen. wenn er fertig ist soll die editierte abfrage gespeichert werden. Dan wenn er sein Script/Makro ausfĂŒhrt kommt irgendwo im script die abfrage die dan so ausgefĂŒhrt werden soll wie der benutzer das voher verĂ€ndert hat! ich hoffe das es jetzt verstĂ€ndlicher ist
-roTekuGeL- Geschrieben 24. Mai 2004 Geschrieben 24. Mai 2004 oh also wenn du dir ne ganze Abfrage so aufbauen lassen willst wirds schwierig... weiĂ nicht obs ne Funktion gibt, mit der man Coding Interpretieren kann...
Gast Geschrieben 24. Mai 2004 Geschrieben 24. Mai 2004 @ Mr. D Bevor Du die Variable "Abfrage" verwendest musst Du sie deklarieren. Dim Abfrage as Boolean Abfrage=(zelle.Value >= "208444") And (zelle.Value <= "208530") And Not (zelle.Value = "208470") And Not (zelle.Value = "208471") And Not (zelle.Value = 208472) ... ... If Abfrage Then ... ...
-roTekuGeL- Geschrieben 24. Mai 2004 Geschrieben 24. Mai 2004 @ Mr. D Bevor Du die Variable "Abfrage" verwendest musst Du sie deklarieren. Dim Abfrage as Boolean Abfrage=(zelle.Value >= "208444") And (zelle.Value <= "208530") And Not (zelle.Value = "208470") And Not (zelle.Value = "208471") And Not (zelle.Value = 208472) ... ... If Abfrage Then ... ... ich glaube er hat es anders gemeint... also dass er die Abfrage in dem String speichert und dann ausfĂŒhren kann...
robotto7831a Geschrieben 24. Mai 2004 Geschrieben 24. Mai 2004 Soll der Benutzer SQL oder VBA schreiben? Frank
-roTekuGeL- Geschrieben 24. Mai 2004 Geschrieben 24. Mai 2004 Soll der Benutzer SQL oder VBA schreiben? Frank also ohne jetzt genaueres zu wissen vermute ich mal VBA
Mr. D Geschrieben 24. Mai 2004 Autor Geschrieben 24. Mai 2004 @LoneGunman ja hab ich aber als Integer *g* werds mal mit boolean versuchen sobald ich kann @palvoelgyi hmm eigentlich gar keine bzw sollte ohne datenbank funktionieren....man mĂŒsste den "text" doch auch in ne variable schreiben lassen können oder?
Mr. D Geschrieben 24. Mai 2004 Autor Geschrieben 24. Mai 2004 hmm warum kann ich den jetzt nich editieren...naja egal... sorry hab mich falsch ausgedrĂŒckt bei meinem letzten post *zeigt nach oben* @palvoelgyi meinst du als Datenbank oder wie er den Text reinschreiben soll bzw die Ănderung? also das dan in vba...
NoOneKnows Geschrieben 24. Mai 2004 Geschrieben 24. Mai 2004 Sowas lĂ€sst sich ĂŒber VBScript machen. Ist zwar eine ĂŒble Lösung, sollte aber funktionieren: Dim code As String Dim myScript As Object Set myScript = CreateObject("ScriptControl") code = "Function Test(meinValue)" & vbCrLf & _ "If meinValue > 2000 Then" & vbCrLf & _ "test = True" & vbCrLf & _ "Else" & vbCrLf & _ "test = False" & vbCrLf & _ "End If" & vbCrLf & _ "End Function" myScript.Language = "VBScript" myScript.AddCode code Debug.Print myScript.Run("Test", 2005) An der Stelle des script-codes kannst du dann die Bedingung einfĂŒgen und den Wert kannst du an die Funktion ĂŒbergeben und bekommst das Ergebnis zurĂŒck. Hoffe das hilft dir weiter...
Mr. D Geschrieben 24. Mai 2004 Autor Geschrieben 24. Mai 2004 Hi, also dein script sieht eigentlich ganz gut aus auser das es irgendwie net geht *gg* nee...ich kriegst in excel nicht zum laufen...er fĂŒhrts zwar aus aber aber er gibt nichts zurĂŒck....bzw der "Debug.Print myScript.Run("Test", 2005)" Befehl macht nichts.....
NoOneKnows Geschrieben 24. Mai 2004 Geschrieben 24. Mai 2004 Okay, du kannst auch folgendes schreiben: Dim result As Boolean ... result = myScript.Run("Test", 2005) Dann steht im result eben das Ergebnis der Bedingung, also ob Wahr oder Falsch. Beim Debug.Print schreibt er das Ergebnis ins Direktfenster der Makro-IDE. Wenn du fĂŒr 2005 eine kleinere Zahl einsetzt wirst du sehen, das es funzt...
Mr. D Geschrieben 24. Mai 2004 Autor Geschrieben 24. Mai 2004 Wow!!! :uli es funktioniert soweit perfekt!! thx so jetzt erstelle ich mal alles und wenn es dan funktioniert dan bin ich wirklich happy
Empfohlene BeitrÀge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto fĂŒr unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden