Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1040to1044
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Public Variable zum tausendsten Mal

Public Variable zum tausendsten Mal
24.01.2009 14:18:08
MBorn
Hallo,
Wenn ich in einem allgemeinen Modul
Public MeineVariable As String
Meine Variable = 123
eingebe, müßte diese doch in einem anderen
Modul abrufbar sein. Das funktioniert gerade nicht.
Ist dabei Option Explicit zwingend notwendig oder
gibt es einen anderen einfachen Grund, warum das
nicht funktioniert?
Merci,
Born

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Public Variable zum tausendsten Mal
24.01.2009 14:38:41
Peter
Hallo Born,
versuch einmal deine String-Variable mit "123" zu befüllen.
Gruß Peter
AW: Public Variable auch mit String
24.01.2009 15:11:00
MBorn
Hallo Peter, hallo Gerd
123 ist nur ein Beispiel. Ist schon klar, daß dort ein String steht.
Also "ABC". Eine Idee, warum das nicht läuft?
@ Gerd,
die Variable wird in einer allgemeinen Sub definiert.
Gruß,
Born
AW: Public Variable auch mit String
24.01.2009 15:27:53
Gerd
' ************************************************************* _ ' Modul: Tabelle1 Typ = Element der Mappe(Sheet, Workbook, ...) ' ************************************************************** Option Explicit Sub Testvariable_laden() pstrVar = "ABC" End Sub



' **************************************************************
' Modul: Modul1 Typ = Allgemeines Modul
' **************************************************************

Option Explicit
Public pstrVar As String



' **************************************************************
' Modul: Modul2 Typ = Allgemeines Modul
' **************************************************************

Option Explicit
Sub testausgabe()
MsgBox pstrVar
End Sub


Anzeige
AW: Public Variable zum tausendsten Mal
24.01.2009 14:40:00
Gerd
Hi,
warum ein Zahl als String? Und wenn schon, dann in "".
Die Variable muss in einer Sub oder Funktion initialisiert werden
oder du verwendest eine Konstante, die dann im weiteren Code
nicht mehr verändert werden kann.
mfg Gerd
AW: Public Variable zum tausendsten Mal
24.01.2009 15:33:42
Oberschlumpf
Hi...wie auch immer du heißt...

Public meineVar As String
Sub WertAnVar
meineVar  = "Das ist eine String-Variable"
AnzeigeDerVarMitMsgBox
End Sub
Sub AnzeigeDerVarMitMsgBox
MsgBox meineVar
End Sub


Dieses Konstrukt im allg. Modul liefert mir in Excel eine MsgBox mit Inhalt
Das ist eine String-Variable
Funktioniert also problemlos.
Was hältst du von der Idee, uns (d)eine Bsp-Datei mit Inhalt + Code zur Verfügung zu stellen?
Ciao
Thorsten

Anzeige
AW: Public Variable zum tausendsten Mal
24.01.2009 15:53:55
MBorn
Hallo @all,
Euch allen danke, bei mir funktioniert es inzwischen auch.
Das einzige, was noch hakt ist die Frage, warum
Public Const WS As Worksheet =Worksheets("Abfrage")
die Fehlermeldung "Erwartet Typbezeichung" bei Worksheet
anzeigt.
Gruß und Dank,
Born
AW: Public Variable zum tausendsten Mal
24.01.2009 16:06:00
Gerd
Hallo Born,
Objektvariablen musst Du Setten.
Hier ginge es mit deiner Version vermutlich nur mit dem Objektnamen als String.
Gruß Gerd
AW: Public Variable zum tausendsten Mal
24.01.2009 16:10:00
MBorn
Hallo Gerd,
was heißt das denn auf deutsch?
Muß es so heißen:
Set Public Const WS As Worksheet =Worksheets("Abfrage")?
Gruß,
Born
Anzeige
AW: Public Variable zum tausendsten Mal
24.01.2009 16:22:23
Gerd
Hallo Born!
Public Const pWSName As String ="Abfrage"
Public pWSAbfrage as Worksheet 'keine Const-Anweisung!

Sub ttt()
Set pWSAbfrage = ThisWorkbook.Worksheets("Abfrage")
Msgbox pWSAbfrage.Name
Msgbox Thisworkbook.Worksheets(pWSName).Name
End Sub


Gruß Gerd

AW: Public Variable zum tausendsten Mal
24.01.2009 16:24:26
Jan
Hi,
Public DeinWorksheet As Worksheet

Sub setten()
Set DeinWorksheet = Sheets("Tabelle1")
End Sub


mfg Jan

AW: Public Variable zum tausendsten Mal
24.01.2009 16:27:01
Erich
Hallo Born,
ein Zitat aus der VBA-Hilfe zu Const:

Typ
Optional. Datentyp der Konstanten. Zulässige Typen sind Byte, Boolean, Integer, Long,
Currency, Single, Double, Decimal (zur Zeit nicht unterstützt), Date, String oder Variant.
Verwenden Sie für jede deklarierte Variable einen separaten As Typ-Abschnitt. 

Worksheet ist KEIN Datentyp, sondern eine Klasse.
Abgesehen davon:
=Worksheets("Abfrage") ist der Zugriff auf eine Liste und keineswegs eine Konstante.
(z.B. Fehler, wenn es gerade kein Blatt "Abfrage" gibt.)
Dies nur zur Erklärung, warum das nicht klappen konnte.
Wie es geht, haz Gerd dir schon gezeigt.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort und schönes Wochenende!

Anzeige
AW: Ach so, danke...
24.01.2009 18:42:00
MBorn
Ich danke allen für die erhellenden Ausführungen.
Erkenntnis: Es ist also nicht möglich ein Worksheet DIREKT als Public Konstante zu setzen.
Danke,
Born

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige