Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
664to668
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
664to668
664to668
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Variable aus Modul in DieseArbeitsmappe verwenden

Variable aus Modul in DieseArbeitsmappe verwenden
13.09.2005 15:07:24
Gülich
Hallo,
ich deklariere in einem Modul eine Variable mit dem aktuellen Rechnernamen
Modul 1:
Public rechnername As String
Declare Function GetComputerName& Lib "kernel32" Alias "GetComputerNameA" (ByVal lbbuffer As String, nsize As Long)
------------------------------------------------------------------------------
Sub Rechnername_auslesen()
Dim rechnername As String * 64
Call GetComputerName(rechnername, 64)
End Sub
In diesem Modul sind auch noch weitere Makros
In "DieseArbeitsmappe" läuft folgendes Makro beim Start ab:
Option Explicit
-------------------------------------------------------------

Private Sub Workbook_Open()
Application.Run ("LFR_4_KEA.XLS!Rechnername_auslesen")
Dim variable1 As Boolean
Dim ZuÖffnendeDatei
Dim fs
'Prüfen ob Datei "Rechnername.txt" besteht
ZuÖffnendeDatei = "T:\" & rechnername & ".txt"
Set fs = CreateObject("Scripting.FileSystemObject")
variable1 = fs.FileExists(ZuÖffnendeDatei)
'Wenn Datei nicht besteht, dann Fragen ob beenden oder nicht
'(um ActiveWindow.Close umgehen zu können)
If variable1 = "Falsch" Then
Dim Mldg, Stil, Titel, Antwort                                                               ' Variablen definieren
Mldg = "Datei aus Caché konnte nicht gefunden werden! Luftfrachtrechner wieder schliessen?"   ' Meldung definieren.
Stil = vbYesNo + vbCritical + vbDefaultButton1 + vbApplicationModal + vbMsgBoxSetForeground  ' Schaltflächen definieren.
Titel = ZuÖffnendeDatei & " Datei fehlt - beenden?"                                                        ' Titel definieren.
Antwort = MsgBox(Mldg, Stil, Titel)
If Antwort = 6 Then
GoTo weiter
Else: GoTo abbrechen
End If
End If
'eigentlicher Sinn des Skriptes: Daten von KEA auslesen, in Excel bearbeiten und
'und Textfile wieder zurückschreiben - funktioniert gut
Application.Run ("LFR_4_KEA.XLS!Daten_KEA_2_XLS")
Application.Run ("LFR_4_KEA.XLS!Daten_XLS_2_KEA")
weiter:
'EXCEL schliessen
ActiveWindow.Close SaveChanges:=False ' ACHTUNG!!! Nach aktivieren schliesst EXCEL selbständig!
Close
abbrechen:
End Sub

Jetzt sollte ich also in "DieseArbeitsmappe" die Variable "Rechnername" zur Verfügung haben. geht das irgendwie? Ich hatte auch schon versucht das Makro "Rechnername_auslesen" in diese Arbeitsmappe zu schreiben, ging aber auch nicht.
Hat jemand eine Lösung auf mein Problem?
Meine VBA-Kenntnisse sind recht dürftig, ich arbeite viel mit der Hilfe und mit logischem Denken, weniger mit Wissen - also erwartet nicht viel von mir. Danke.

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Variable aus Modul in DieseArbeitsmappe verwenden
13.09.2005 15:23:07
Ramses
hallo
nachdem du mit Hilfe und logischem Denken arbeiten kannst, hier mal ein Link
http://www.vbarchiv.net/vbapi/GetComputerName.php
Wo die Funktion besser dargestellt ist.
Irgendwie muss deine Variable den Namen erhalten !!!!
GetComputerName ist nur der Aufruf einer API-Funktion um einen Wert zu erhalten,... deine Variable hat ihn aber noch nicht
Gruss Rainer
Brain und Google sind keine Konkurrenten :-)
AW: Variable aus Modul in DieseArbeitsmappe verwen
14.09.2005 08:12:12
Michel
Hallo,
habe selbst nochmal rumgetüftelt. Also die Deklaration muss man im Modul machen, das eigentliche Makro Rechnername_auslesen() habe ich gelöscht und den Inhalt direkt in DieseArbeitsmappe ( Sub Workbook_Open() )verwendet. Funktioniert jetzt tadellos.
Danke für due Unterstützung.
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige