tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
4
ZUGRIFFE
549
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    hwcsteffen hwcsteffen ist offline Mitglied Bronze
    Registriert seit
    Feb 2006
    Beiträge
    41
    Hallo,

    ich benötige dringend hilfe. Folgendes:

    Ich habe ein Worksheet in dem sagen wir 2 Anweisungen stehen, wie z.B.

    (Worksheet: AE-Regeln, Zeile 11, Spalte 2)

    SD = "" And Left(Project,5) = "Stock"

    Dies steht 1 zu 1 in der Zelle.

    Jetzt möchte ich auf einen anderen Worksheet eine Abfrage starten.

    Code :
    1
    2
    3
    4
    5
    
    If Sheets("AE-Regeln").Cells(11, 2) Then
     
    BLA BLA
     
    END IF

    Das Prob liegt nur dabei, dass er dann Laufzeitfehler 13 sagt!! Wie kann ich das richtig machen?
     

  2. #2
    ronaldh ronaldh ist offline Mitglied Brillant
    Registriert seit
    Apr 2007
    Ort
    Hannover
    Beiträge
    912
    Es ist meiner Kenntnis nach leider nicht möglich, dynamischen Programmcode mit VB zu erstellen.
     
    Nur tote Fische schwimmen mit dem Strom.

  3. #3
    Avatar von DrSoong
    DrSoong DrSoong ist offline Iss was, Doc!
    tutorials.de Premium-User
    Registriert seit
    Jul 2003
    Ort
    Dem Zentrum meiner Welt
    Beiträge
    1.836
    Blog-Einträge
    85
    Mir stellt sich bei deinen Problem die Frage, wieso du solche Sachen wie z.B. Sheetname, Zellen usw nicht einfach per globaler Variablen übergibst und in deiner andere Sub in die entsprechende Formel einliest.

    Allerdings muss ich sagen, dass ronaldh da leider etwas übersehen hat, es ist in VBA (in VB ginge es nicht, hwcsteffen spricht ja aber von Excelmakros) doch möglich ist, dynamisch Code zu erzeugen. Muss mal danach suchen und poste, wenn ich es habe (hab das ganze erst vor kurzem gehabt, man, was bin ich vergesslich).

    Sei dir dann aber bewusst, dass mit der dynamischen Codeerstellung auch Gefahren einhergehen, du kannst z.B. Prozeduren löschen, das würde sich dann sicher negativ auf dein Projekt auswirken.

    Alles weitere, wenn ich das ganze wieder behirnt habe.


    Der Doc!
     
    A: Hilfe, ich hab zwei Dateien hinzugefügt und nun sind die anderen weg
    B: Die Scrollbar da rechts ist dir schon mal aufgefallen?

  4. #4
    ronaldh ronaldh ist offline Mitglied Brillant
    Registriert seit
    Apr 2007
    Ort
    Hannover
    Beiträge
    912
    Zitat Zitat von DrSoong Beitrag anzeigen
    Mir stellt sich bei deinen Problem die Frage, wieso du solche Sachen wie z.B. Sheetname, Zellen usw nicht einfach per globaler Variablen übergibst und in deiner andere Sub in die entsprechende Formel einliest.

    Allerdings muss ich sagen, dass ronaldh da leider etwas übersehen hat, es ist in VBA (in VB ginge es nicht, hwcsteffen spricht ja aber von Excelmakros) doch möglich ist, dynamisch Code zu erzeugen. Muss mal danach suchen und poste, wenn ich es habe (hab das ganze erst vor kurzem gehabt, man, was bin ich vergesslich).

    Sei dir dann aber bewusst, dass mit der dynamischen Codeerstellung auch Gefahren einhergehen, du kannst z.B. Prozeduren löschen, das würde sich dann sicher negativ auf dein Projekt auswirken.

    Alles weitere, wenn ich das ganze wieder behirnt habe.


    Der Doc!
    Danke, Doc, wieder was dazu gelernt! Mit VBA mache ich nicht allzu oft was, ich bin davon ausgegangen, dass da auch eine Art Pre-Kompilierung vor der Ausführung abläuft.
     
    Nur tote Fische schwimmen mit dem Strom.

  5. #5
    Avatar von DrSoong
    DrSoong DrSoong ist offline Iss was, Doc!
    tutorials.de Premium-User
    Registriert seit
    Jul 2003
    Ort
    Dem Zentrum meiner Welt
    Beiträge
    1.836
    Blog-Einträge
    85
    So, hier auch gleich noch Wissen dazu.

    Mit der VBComponents-Anweisung kannst du auf VBA-Code zugreifen, ihn ändern und löschen aber auch neu erstellen.

    Mit der Zeile
    Code vb:
    1
    
    ThisWorkbook.VBProject.VBComponents("Tabelle1").CodeModule.AddFromString "Sub Prozedur()" & Chr(13) & " x = 1" & Chr(13) & "End Sub"
    kannst du z.B. eine neue Prozedur erstellen, dabei wird in diesem Fall die Prozedur an den Anfang des Projektfensters (hier die Codefenster der Tabelle) gestellt.

    In der Excel-Hilfe finden sich dann auch noch andere Anweisungen zum löschen, einfügen usw., die Warnung betr eventueller Selbstzerstörung von oben gilt aber noch immer.


    Der Doc!
     
    A: Hilfe, ich hab zwei Dateien hinzugefügt und nun sind die anderen weg
    B: Die Scrollbar da rechts ist dir schon mal aufgefallen?

Ähnliche Themen

  1. » Access SQL-Anweisung & While-Schleife ?
    Von Barry007 im Forum Office-Anwendungen
    Antworten: 5
    Letzter Beitrag: 08.07.10, 11:00
  2. Antworten: 1
    Letzter Beitrag: 20.04.10, 19:44
  3. Excel - Werte in Sheet suchen, auslesen und in anderem Sheet ausgeben
    Von 0987654321kevin im Forum Visual Basic 6.0
    Antworten: 14
    Letzter Beitrag: 18.08.08, 14:24
  4. URL mit Anführungsstrichen
    Von Cherrywine im Forum Hosting & Webserver
    Antworten: 4
    Letzter Beitrag: 10.03.08, 20:02
  5. 2 Anweisung für For-Schleife?
    Von Dragi im Forum Javascript & Ajax
    Antworten: 2
    Letzter Beitrag: 22.08.06, 09:39