online 1
gast (50)

/ Forum / Tabellenkalkulation

TabellenkalkulationTabellenkalkulation

Fragevon tiltappe vom 06.04.2019, 17:24 Options

Excel Makro benutzerdefinierte (TYPE) Variable übergeben

Hallo erst einmal an alle hier im Forum,
ich habe ein Problem mit einem Excel Makro.
Ich habe mit Type eine benutzerdefinierte Variablentyp deklariert.
Z.B.
Type Daten
Feld1 as string
Feld2 as integer
end type

Dann habe ich zwei variablen diese Typs deklariert.
dim Var1 as Daten
dim Var2 as Daten

Ich möchte nun in einer Sub diese Daten mit Werten aus einer Exceltabelle füllen und dann in einem Formular anzeigen.

Da ich aber von verschiedenen Sub's Daten in das Formular schreiben möchte, benötige ich eine SUB, welche einfach nur die Daten in das Formular schreibt.
Wie kann ich die Daten von einer Sub an die andere übergeben.
Beispiel

sub lese
Var1.feld1 ="Test"
Var1.feld2= 5
schreibe var1
end sub

sub schreibe (var2 as Daten)
'Hier möchte ich die Daten in einem Formular anzeigen"
end sub

Ich bekomme eine Fehlermeldung "Typen unverträglich"
Was mache ich falsch, oder wo liegt mien Denkfehler.
Dank im Vorraus,
Joachim


Antwort schreiben

Antwort 1 von coros vom 06.04.2019, 20:13 Options

Hallo Joachim,

Du übergibst in Deinem Makro "lese" an das Makro "schreibe" die Variable "var1". Im Makro "schreibe" dekalrierst Du aber dann die Variable "var2". Dort muss VAriable "var1" deklaiert werden, also

sub schreibe ([b][u]var1 as Daten[/u][/b])


Was ich allerdings nicht verstehe, warum Du die Variablen nicht mit "Publik" in einem Modul deklarierst. Damit hast Du dann überall in allen Makros usw. die Variable mit Ihrem Wert zur Verfügung.

MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Antwort 2 von tiltappe vom 07.04.2019, 13:05 Options

Hallo Oliver,
vielen Dank für deine schnelle Hilfe.
Es funktioniert so, wie du geschrieben hast. Ich hatte da wohl etwas falsch verstanden.
Vielleicht kannst du mir Noch folgendes erklären.
Wenn ich nun die Sub Schreibe von mehreren unterschiedlichen Sub's nutzen möchten und die zu übergebenden Variablen auch verschieden sind (Aber gleicher Typ. ( z.B VAR2, VAR3;VAR4) Kann ich die irgendwie direkt übergeben, oder muss ich diese immer erst in VAR1 kopieren?? Hintergrund meiner Frage: Ich möchte z.B. Werte in ein Formular schreiben und mit einer anderen fest belegten VAriable einen "Default Wert" reinschreiben.
Gruss, schöne Feiertage und nochmals Danke,
Joachim

Ähnliche Themen

Formular: wert aus dropdownmenü in variable übergeben
didia  27.04.2007 - 147 Hits - 1 Antwort

Makro in Excel für Pfadangabe
randy08  25.10.2007 - 171 Hits - 6 Antworten

MS-Query-SQL Abfrage für Excel aus GUPTA-DB
Rene.N  14.01.2008 - 34 Hits - 1 Antwort

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Thu Jan 8 21:07:44 2026