Supportnet / Forum / Tabellenkalkulation
Variablen definieren
Frage
Hallo zusammen,
nachdem ich gestern schon super Hilfe bekommen hab, hier gleich nochmal eine Frage:
Ich hab ein Macro, dass im Wesentlichen daraus besteht, dass es viele kleine Macros aufruft und ausfuehrt.
Mein Problem ist jetzt folgendes: In sieben dieser kleinen Macros definiere ich Variablen, die von meiner Datei, die ich eingebe abhaengt.
Da dieses Macro auf verschiedene Dateien in Zukunft angewendet werden soll, war meine Idee, dass der Anweder nur noch die Information eingibt und dann das Macro laufen laesst. Am einfachsten erschien mir das, die Variablen aus den kleinen Macros rauszunehmen und in das zusammenfassende macro ganz an den Anfang zu setzten und gleich dort auch zu bestimmen.
Mit dieser Aenderung laeuft mein Macro jetzt aber nimmer.
Weiss jemand, wie ich das anders regeln kann.
Gibt es vieleicht sogar ein Macro, was zu beginn die benoetigten Daten abfragt und dann an die richtige Stelle in den richten macros einfuegt?
Im Anschluss seht ihr das zusammenfassende Macro. Zuerst die Variablen, die ich definiert hab, dann die einzelnen aufrufe. Die eingerueckten Aufrufe, sind die, in denen die Variablen benutzt werden.
Vielen Dank schonmal in vorraus!!!!
Sub aaxray()
Application.ScreenUpdating = False
Dim FirstMonth As Integer
Dim FirstYear As Integer
Dim LastMonth As Integer
Dim LastYear As Integer
Dim FirstMonthSub As Integer
Dim FirstYearSub As Integer
Dim ActualMonthSub As Integer
Dim ActualYearSub As Integer
Dim Sub1 As String
Dim Sub2 As String
´Change the following numbers
FirstMonth = 7
FirstYear = 2005
LastMonth = 6
LastYear = 2006
FirstMonthSub = 2
FirstYearSub = 2005
ActualMonthSub = 7
ActualYearSub = 2006
CountSub = 18
Sub1 = "Sub2005-02"
Sub2 = "Sub2005-07"
Call ersterRun
Call VollstaendigSub
Call VollstaendigMonth
Call VollstaendigMonth2
Call VollstaendigMonth3
Call Spalten4
Call zweiterRun
Call VollstaendigSuba
Call VollstaendigSub2a
Call VollstaendigSub3a
Call Spalten3
Call VollstaendigMonth
Call VollstaendigMonth2
Call VollstaendigMonth3
Call Spalten4
Call six
Call samplesheet
Call eliminateSamples
Call pivotVertical
Call pivotTransversal
Call Transversal
Call Vertical
Call Monthly
Call Summary
Call VSummary
Call TSummary
Call total
Call Finish
Call pivotChart
Call Chart
Call Last
Call SkuMix
End Sub
Antwort 1 von nighty
hi henrike :)
deine variablen sind local,gebe sie global an :)
gruss nighty
beispiel
deine deklaration
Dim FirstMonth As Integer
geänderte deklaration
global FirstMonth As Integer
gruss nighty
deine variablen sind local,gebe sie global an :)
gruss nighty
beispiel
deine deklaration
Dim FirstMonth As Integer
geänderte deklaration
global FirstMonth As Integer
gruss nighty
Antwort 2 von Henrike
Ich muss leider nochmal bloed nachfragen: Ich hab jetzt alle Variablen mit "Global" deklariert, satt mit "Dim",
bekomm jetzt aber eine Fehlermeldung:
Compile error:
Invalid attribute in sub or function
bekomm jetzt aber eine Fehlermeldung:
Compile error:
Invalid attribute in sub or function
Antwort 3 von nighty
hi henrike :)
globale anweisungen werden ausserhalb eines makros angegeben in einem allgemeinen modul
gruss nighty
globale anweisungen werden ausserhalb eines makros angegeben in einem allgemeinen modul
gruss nighty
Antwort 4 von Henrike
Vielen, vielen Dank, jetzt hat´s geklappt!!!!
Antwort 5 von Henrike
jetzt hab ich allerdings noch eine Folgefrage:
Ich hab jetzt in das ganze noch inputboxen eingebaut.
Allerdings werden dadurch Strings festgelegt. Gibts auch ne moeglichkeit den Inhalt solcher Inputboxen als Integer zu deklarieren?
Ich hab jetzt in das ganze noch inputboxen eingebaut.
Allerdings werden dadurch Strings festgelegt. Gibts auch ne moeglichkeit den Inhalt solcher Inputboxen als Integer zu deklarieren?

