Office: Variable übergeben

Helfe beim Thema Variable übergeben in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo liebe Forumsgemeinde, ich bin ein VBA-Anfänger und habe erst letzte Woche begonnen, mich damit zu beschäftigen. Leider komme ich bei der... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von fruitfly, 10. März 2014.

  1. Variable übergeben


    Hallo liebe Forumsgemeinde,

    ich bin ein VBA-Anfänger und habe erst letzte Woche begonnen, mich damit zu beschäftigen. Leider komme ich bei der Übergabe von Variabeln nicht zurecht. Anscheinend sind mir selbst die einfachsten Übungsbeispiele die dieses Thema behandeln zu hoch.

    Ziel ist es, eine Formel in einen dynamischen Zellbereich einer Spalte zu schreiben. Das funktioniert auch ganz gut mit folgender Prozedur.

    Code:
    Das Problem ist nun, dass ich gerne die benötigte Zeilennummer "strBisDahin" gerne vom folgender Prozedur in die oben gezeigte Prozedur übergeben möchte, so dass ich mir in der oberen den Code dafür spare.

    Code:
    Ich habe z.B. versucht die Variable "strBisDahin" modulöffentlich zu deklarieren, hier kam es aber dann in der Prozedur "FormelInZellenEinfügenDynamisch() " teilweise zu Fehlermeldungen und ich musste zuvor erst die Prozedur "ZelleSuchen()" ausführen.

    Freue mich über jede Hilfe oder Erklärung.

    viele Grüße

    Alois

    :)
     
    fruitfly, 10. März 2014
    #1
  2. Moin Alois
    Versuchs mal so, die Variable ausserhalb des Sub.
    Code:
    oder
    Code:
    edit:
    Und so reicht es auch:
    Code:
    gruss hary
     
  3. Hallo Harry,

    vielen Dank für Deinen Beitrag!
    Die beiden Varianten (ausserhalb Sub + Public) funktionieren.

    Aber, eine Übergabe des Wertes von einer Sub zur anderen ist das jetzt nicht, oder?

    Sollte ich da nicht mit Parametern, bzw. dem Befehl Call arbeiten?
    Ich dachte immer ich müsste so etwas in der Art schreiben:
    http://www.ms-office-forum.net/forum...d.php?t=241823

    Ich frage deshalb, weil ich es mit einer modulöffentlichen Variable schon probiert hab und da musste ich (Grund kenne ich nicht) oftmals das Sub "ZelleSuchen" vorher ausführen, dass auch ein Wert im anderen Sub ankommt. Obwohl ich das Sub "ZelleSuchen" vorher schon des öfteren ausgeführt habe (Die Arbeitsmappe, war jedoch die ganze Zeit geöffnet).

    Übrigens dein Code für das Sub zum Formel einfügen ist perfekt.
    Sobald ich jetzt zusätzliche Werte in den Spalten A bis C eingebe, errechnet er mir automatisch das Ergebnis in D, OHNE das ich das Makro erneut laufen lassen muss. Vielen Dank hierfür!

    Gruß

    Alois
     
    fruitfly, 11. März 2014
    #3
  4. Variable übergeben

    Hallo Alois,

    ich "grätsche" da mal rein. Richtig, das ist keine Übergabe; und vom Prinzip her hast du Recht mit dem von dir aufgezeigten Link. Speziell dazu noch eine Anmerkung: IMHO ist es "Sauberer", wenn du bei der Übergabe so arbeitest:
    Code:
    also mit Call und kein Leerzeichen vor der öffnenden runden Klammer. Aber das nur nebenbei. Prinzipiell ist das, was du dort angesprochen hast, ein klassischer Fall für eine Function (Funktion), welche dann einen Wert zurück gibt. Ein Beispiel mit genau dieser Sachlage findest du bei Exel-ist-sexy.de in meinem Blog (der aber noch in den Kinderschuhen steckt).
     
    GMG-CC, 12. März 2014
    #4
  5. Hallo Alois,

    schau mal:
    beginnend in der Sub "FormelInZellenEinfügenDynamisch"
    Code:
    Der Weg "anders" herum (beginnend in der Sub "start"):
    Code:
    Ob Du Dir nun Call angewöhnst oder nicht ist relativ egal - Du solltest aber beide Wege kennen und auch die Unterschiede und Einschränkungen. (Ich bin in meinem VBA-Leben bisher sehr gut ohne Call ausgekommen)


    @Günther
    dann sei aber so konsequent und nutze Call bei allen Methoden:
    Code:
    *wink.gif*

    Grüße
    EarlFred
     
    EarlFred, 12. März 2014
    #5
  6. Hallo EarlFred,

    vielen Dank für Deine ausführliche Antwort und die Lösung meines "Problems" mittels zwei unterschiedlichen Wegen.
    Das hat nun dazu geführt, dass es auch bei mir klick gemacht hat *Smilie


    Hallo Günther,

    auch Dir vielen Dank für´s reingrätschen *cool.gif*
     
    fruitfly, 12. März 2014
    #6
Thema:

Variable übergeben

Die Seite wird geladen...
  1. Variable übergeben - Similar Threads - Variable übergeben

  2. Inhalt einer Variable an einen Filter übergeben

    in Microsoft Excel Hilfe
    Inhalt einer Variable an einen Filter übergeben: Moin, ich hab ein Problem mit der AutoFilter Funktion in VBA. Nutze ich die AutoFilterFunktion mit "Criteria1:=(".....")" funktioniert alles ohne Probleme, will ich aber "Criteria1:=" mit dem...
  3. Funktion soll Wert in Variable übergeben (VBA)

    in Microsoft Excel Hilfe
    Funktion soll Wert in Variable übergeben (VBA): Hallo Forum-Gurus, ich bräuchte kurz Eure Hilfe. Anscheinend bin ich auf den Kopf gefallen. Folgende Funktion habe ich programmiert und möchte das Ergebnis nun in einer andere Private Sub...
  4. Variablen einer UserForm übergeben

    in Microsoft Excel Hilfe
    Variablen einer UserForm übergeben: Hallo liebe Forum-Nutzer, ich bin wieder auf ein kleines Problem in meinem Code gestoßen... Ich habe eine UserForm, in die der Nutzer einen Wert eingeben kann. Nun hat er die Wahl, ob er...
  5. alle Excel Workbook Namen als Variablen übergeben

    in Microsoft Excel Hilfe
    alle Excel Workbook Namen als Variablen übergeben: Hallo, Ich möchte gerne alle Namen, die ich in Excel definiert habe, als Variablen definieren. Im meinem Workbook habe ich mehrere hundert Namen. Ich suche nach einer eleganten Lösung (z.B. For...
  6. Anzahl Stellen in variable übergeben

    in Microsoft Excel Hilfe
    Anzahl Stellen in variable übergeben: Hallo zusammen, meine aktive Zelle ist c1. Ich möchte jetzt die Anzahl der Stellen einer Zahl in A1 ermitteln und als variable k ausgeben. Also wenn in A1 der Wert 125 steht, soll k = 3 ergebn....
  7. Pfad an Variable übergeben

    in Microsoft Access Hilfe
    Pfad an Variable übergeben: Hallo, ich möchte einen Pfad an eine Variable übergeben: Das funktioniert: Code: Dim strPfad As String strPfad = CurrentProject.Path Das führt zu Laufzeitfehler 53 "Datei nicht gefunden"...
  8. Variable in anderes Workbook übergeben

    in Microsoft Excel Hilfe
    Variable in anderes Workbook übergeben: Hallo, ich möchte mit einem Makro eine Datei öffnen Private Sub CommandButton1_Click() Dim intMonat As Integer, intJahr As Integer With Menü_Lohn intMonat = CBox_Monat.ListIndex...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden