Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
704to708
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
704to708
704to708
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Desktop

Desktop
06.12.2005 00:47:56
Gnilk
Hallo Leute,
ich habe ein Problem, wenn ich Daten auf dem Desktop speichern will. Ich habe ein Makro was am Ende Daten auf dem Desktop speichert. Bei uns in der Firma gibt es jedoch PC mit Windows NT und welche mit XP. Will man Daten auf dem Desktop speichern, muss man unterschiedliche Pfade benutzen.
Unter XP heisst der Pfad: C:\Documents and Settings\...
unter NT heisst der Pfad: C:\WINNT\Profiles\...
Kann anhierfuer eine If... Then... Sache schreiben.
Also:
If Windows XP Then C:\Documents and Settings\...
Else if Windows NT Then C:\WINNT\Profiles\...
Natuerlich geht das nicht so einfach, aber wenn mir jemand einen Tip geben koennte, oder den Code, dann waere ich ihm sehr zu Dank verpflichtet.
Vielen Dank im Voraus
Ciao
Gnilk

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Desktop
06.12.2005 00:55:55
Reinhard
Hi Grilik,
unterscheiden sich =INFO("System") bei beiden BS?
Wenn Info auf englisch anders heissen sollte, irgendwo hast du eine Datei vbalist.xls o.ä.
Dann so wie z.B. Summe benutzen:
application.worksheetfunction.sum(....
Gruß
Reinhard
ps:Das Forum lebt auch von Rückmeldungen
AW: Desktop
06.12.2005 05:07:49
Gnilk
Hallo Reinhard,
leider hat es nicht geklappt. Es ist egal ob XP oder NT, wenn man =INFO("System") in die Zelle eingibt, dann steht in beiden BS in der Zelle: pcdoc.
Zumindest ist der Befehl schon einmal der geliche. Egal ob es Englisch oder Deutsch ist. Das ist doch schon einmal was.
Aber mein Problem ist immer noch da.
Was du jedoch mit application... gemeint hast habe ich nicht verstanden.
Ciao
Gnilk
Anzeige
Betriebssystem ermitteln
06.12.2005 13:18:30
Reinhard
Hi Grilk,
das war nur ein Beispioel für die Syntax bei Benutzung von Tabellenblattfunktionen (sind igmal schneller als "normale VBA Funktionen) in VBA. Näheres in der VBA Hilfe zu worksheetfunction.
Gruß
Reinhard
ps:Das Forum lebt auch von Rückmeldungen
AW: Desktop
06.12.2005 01:49:02
Ramses
Hallo
vielleicht hilft dir das ja auch
Sub Erstelle_Verzeichnis_und_Shortcut()
    'by Ramses
    Dim myFSO As Object
    Dim myFSOShell As Object
    Dim strDesktop As String
    Dim myMainFolder As String
    Dim mySubFolder As String
    Dim myShortCut As Object
    Dim myToCopyFile As String, myFileExt As String
    'Variablen füllen
    myMainFolder = "C:\Ordner1"
    mySubFolder = myMainFolder & "\Ordner2"
    'OHNE Extension
    myToCopyFile = "Mappe1"
    myFileExt = ".xls"
    Set myFSO = CreateObject("Scripting.FileSystemObject")
    Set myFSOShell = CreateObject("WScript.Shell")
    'Verzeichnis und Unterverzeichnis anlegen
    ChDrive "C:"
    If Not myFSO.folderexists(myMainFolder) Or Not myFSO.folderexists(mySubFolder) Then
        On Error Resume Next
        MkDir myMainFolder
        MkDir mySubFolder
    End If
    
    'Datei von extrern kopieren
    '----
    'myFSO.CopyFile "A:\" & myToCopyFile & myFileExt, mySubFolder
    'Icon copieren das vorhanden sein muss !!!
    '----
    'myFSO.CopyFile "A:\" & myToCopyFile & ".ico", mySubFolder
    
    'Verknüpfung auf dem Desktop erzeugen
    strDesktop = myFSOShell.SpecialFolders("Desktop")
    Debug.Print strDesktop
    Set myShortCut = myFSOShell.CreateShortcut(strDesktop + "\" & myToCopyFile & ".lnk")
    Debug.Print myShortCut
    With myShortCut
        'Fenstertyp beim öffnen
        ' 4=Normal 3=Maximized 7=Minimized
        .windowstyle = 4
        .iconlocation = mySubFolder & "\" & myToCopyFile & ".ico"
        ' oder alternativ ein anderes Icon
        '.IconLocation = "C:\graph9.ico"
        .Targetpath = mySubFolder & "\" & myToCopyFile & myFileExt
        'Keyboard Shortcut zuweisen
        .Hotkey = "ALT+CTRL+E"
        'Speichern
        .Save
    End With
End Sub


Gruss Rainer
Anzeige
AW: Desktop
06.12.2005 05:47:29
Gnilk
Hallo Rainer,
vielen Dank fuer Deine Antwort, aber irgendwie verstehe ich es nicht. Kannst Du mir vielleicht genau sagen wo das mit dem Betriebssystem steht. Hat es wasmit dem Shell zu tun. Meine Hilfefuntkion ist leider auch nicht auf dem besten Stand.
Am besten waere echt, wenn ich einen Befehl (oder Formel) haette, die die BSInfo in eine Zelle schreibt.
Vielen Dank im Voraus
Ciao Gnilk
AW: Desktop
07.12.2005 01:39:21
gnilk
Hallo Ramses,
habe Deinen Vorschlag genommen. Die Formel in der englischen Version lautet:
=INFO("osversion")
Vielen Dank fuer Deine Hilfe
Ciao
Gnilk
AW: Desktop
06.12.2005 06:22:07
Erich
Hallo Gnilk,
ein paar Möglichkeiten, die Systeme zu unterscheiden und mehr oder weniger direkt auf den Desktop-Pfad zu kommen:

Option Explicit
Sub tst()
MsgBox Environ("windir")
MsgBox Environ("temp")
MsgBox Application.UserLibraryPath
MsgBox strDesktop()
End Sub
Function strDesktop() As String  ' nach Ramses
Dim myFSOShell As Object
Set myFSOShell = CreateObject("WScript.Shell")
strDesktop = myFSOShell.SpecialFolders("Desktop") & "\"
Set myFSOShell = Nothing
End Function

Am komfortabelsten ist wohl die Verwendung der Funktion (nach Ramses' Vorschlag).
In einer Zelle liefert vielleicht auch
=INFO("Sysversion")
unterschiedliche Werte. (Habe momentan kein NT zuf Verfügung, müsstest du testen.)
Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: Desktop
07.12.2005 01:34:51
Gnilk
Hallo Erich,
ich habs gefunden. Ich glaube ich nehm das mit dem =INFO(...)
Die Formel bei der engl. Version zum Festellen welches BS man hat lautet:
=INFO("ossystem").
Deine Hilfe und die MS Hilfe haben mir sehr geholfen.
Vielen Dank
Eine schoene Woche noch
Ciao
Gnilk aka Klaus
AW: Desktop
07.12.2005 01:37:44
Gnilk
Ohh pardon, jetzt hast Du das ganze Lob bekommen...
...sorry Erich, aber der Dank geht an Ramses.
kleiner Scherz - ich bedanke mich natuerlich auch bei Dir. Du hast es sozusagen abgesegnet.
ciao
Gnilk

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige