Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1068to1072
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

Systemvariablen setzen

Systemvariablen setzen
21.04.2009 14:34:07
Carsten
Hi Leute,
gibt es eine Möglichkeit aus VBA heraus Systemvariablen zu setzen? Es reicht wenn die Änderungen dann ausschliesslich für den laufenden Excel-Prozess gelten. Ich muß für die Dauer, in der eine bestimmt Excel-Tabelle läuft nämlich die PATH-Variable ergänzen.
Grüße,
Carsten

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
verstehe nur Bahnhof...
21.04.2009 15:02:26
Tino
Hallo,
verstehe einfach nicht was Du vor hast, kann aber auch an mir liegen.
Was für Systemvariablen willst Du ersetzen?
Frage offen!
Gruß Tino
AW: Systemvariablen setzen
21.04.2009 15:02:57
Reinhard
Hallo Carsten,
ich fand ein beispiel um Temp" abzuändern. Das müßte man umbasteln.
Gruß
Reinhard

Option Explicit
Private Declare Function SetEnvironmentVariable Lib "kernel32" Alias _
"SetEnvironmentVariableA" _
(ByVal lpName As String, _
ByVal lpValue As String) As Long
Private Declare Function GetEnvironmentVariable Lib "kernel32" Alias _
"GetEnvironmentVariableA" _
(ByVal lpName As String, _
ByVal lpBuffer As String, _
ByVal nSize As Long) As Long
Dim m_SavePath As String
Sub ChanceTempPath()
Dim sBuffer As String, lResult As String, lLength As Long
'// Pfad zum Temp-Verzeichnis ermitteln
sBuffer = String(256, 0)
lLength = GetEnvironmentVariable("TEMP", sBuffer, Len(sBuffer))
If lLength > 0 Then
m_SavePath = Left$(sBuffer, InStr(sBuffer, vbNullChar) - 1)
End If
MsgBox "Alter Temp-Pfad: " & m_SavePath
'// Pfad zum Temp-Verzeichnis neu setzen
lResult = SetEnvironmentVariable("TEMP", "E:\Temp")
'// Testen
sBuffer = String(256, 0)
lLength = GetEnvironmentVariable("TEMP", sBuffer, Len(sBuffer))
If lLength > 0 Then
MsgBox "Neuer Temp-Pfad: " & _
Left$(sBuffer, InStr(sBuffer, vbNullChar) - 1)
End If
'// Und wieder zurücksetzen
lResult = SetEnvironmentVariable("TEMP", m_SavePath)
End Sub


Anzeige
AW: Systemvariablen setzen
21.04.2009 15:13:14
Carsten
Hi Reinhard,
Welch ein Zufall, das gleiche Beispiel habe ich gerade (scheinbar parallel zu Dir) auch noch bei google gefunden und das funktioniert 1a! :)
Für alle anderen die's interessiert, hier ist nochmal der Link zum Original-Beitrag:
http://www.ms-office-forum.net/forum/showthread.php?t=60936
Grüße und Danke für die Hilfe,
Carsten

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige