Das Clever-Excel-Forum.de - Treffen
findet vom 15. - 17. September 2017 in Thüringen / Region Großer Inselsberg statt. Hotelbuchung ab sofort möglich.


VBA: aktiven Browser (WinStandard) auslesen
#1
Hallo zusammen,
ich würde gerne über VBA das Windows Standard Programm in Bezug auf den Webbrowser und das Emailprogramm auslesen.
Das habe ich bereits gefunden

Zitat:
Code:
Environ("COMPUTERNAME") Name des Computers
Environ("HOMEDRIVE") Standardlaufwerk des Benutzers
Environ("OS") Betriebssystemversion
Environ("Path") Pfadangaben für Anwendungen
Environ("ProgramFiles") Pfad zum Programme-Ordner
Environ("SystemDrive") Laufwerk des Betriebssystems
Environ("SystemRoot") Pfad des Betriebssystems
Environ("TEMP") Pfad temporärer Ordner

Aber wie ich das Standard Programm "Webbrowser" oder "Email" auslesen kann finde ich einfach nichts. Kann mir vielleicht jemand helfen?
Grüße aus Bremen
Bernie

"Wenn du jemanden triffst ohne lächeln, schenke ihm deins !!!"

MS Office 2010 Pro - Win 7 Home Premium
Haftungshinweis: Trotz sorgfältiger inhaltlicher Kontrolle übernehmen ich keine Haftung für die Inhalte externer Links. Für den Inhalt der verlinkten Seiten sind ausschließlich deren Betreiber verantwortlich.
to top
#2
Hallo Bernie,

in Abwandlung eines codes von vb-fun für den Browser:

Code:
Option Explicit

Private Declare Function FindExecutable Lib "shell32.dll" Alias _
    "FindExecutableA" (ByVal lpFile As String, ByVal lpDirectory _
    As String, ByVal lpResult As String) As Long

Private Function StandardBrowser(Browser As String) As String
  Dim sExe As String
  Dim tmpFile As String
  Dim dNr As Integer

  tmpFile = "C:\Test\xxx.html"
  dNr = FreeFile
  Open tmpFile For Output As #dNr
  Close #dNr

  sExe = ExePfad(tmpFile)
  Kill tmpFile

  If sExe <> "" Then
    If InStr(LCase$(sExe), "iexplore") > 0 Then
      Browser = "Microsoft Internet Explorer"
    ElseIf InStr(LCase$(sExe), "netscape") > 0 Then
      Browser = "Netscape Communicator"
    ElseIf InStr(LCase$(sExe), "opera") > 0 Then
      Browser = "Opera"
    Else
      Browser = "kein Browser installiert."
    End If
  End If

  StandardBrowser = sExe
End Function

Private Function ExePfad(ByVal Datei As String) As String
  Dim Pfad As String

  Pfad = Space$(256)
  FindExecutable Datei, vbNullString, Pfad

  If Pfad <> "" Then
    Pfad = Left$(Pfad, InStr(Pfad, vbNullChar) - 1)
  End If

  If UCase$(Pfad) = UCase$(Datei) Then Pfad = ""
  ExePfad = Pfad
End Function

Private Sub Start()
  Dim Browser As String
  MsgBox StandardBrowser(Browser) & vbLf & Browser
End Sub

Der code müsste ggf. für weitere Browser erweitert werden. Für das emailprogramm wird es eventuell etwas komplexer. Wenn Du dieses Prinzip verwendest, müsstest Du die verschiedenen Erweiterungen der unterschiedlichen emailprogramme testen. Statt xxx.html dann also z.B. xxx.msg für Outlook usw.

Es gibt weitere Optimierungsmöglichkeiten. Den Part mit If InStr(LCase$(sExe)... brauchst DU z.B. auch nicht unbedingt ...
   \\\|///      Hoffe, geholfen zu haben.
   ( ô ô )      Grüße, André aus G in T  
 ooO-(_)-Ooo    (Excel 97-2016)
to top
#3
Hallo André,

Danke für deine Hilfe, wird ich morgen ausprobieren. Allerdings, wenn das alles zu kompliziert ist, überlege ich, ob nicht der User mir die Daten selber liefert.

Bitte keinen weiteren Stress machen 100
Grüße aus Bremen
Bernie

"Wenn du jemanden triffst ohne lächeln, schenke ihm deins !!!"

MS Office 2010 Pro - Win 7 Home Premium
Haftungshinweis: Trotz sorgfältiger inhaltlicher Kontrolle übernehmen ich keine Haftung für die Inhalte externer Links. Für den Inhalt der verlinkten Seiten sind ausschließlich deren Betreiber verantwortlich.
to top


Möglicherweise verwandte Themen...
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Excel Power Map Karte Code für den Web Browser? exel_love 4 273 18.08.2016, 14:55
Letzter Beitrag: schauan
  Fokussierung der aktiven Zelle - Bewegung des Arbeitsblattes Annegret 3 382 22.05.2016, 08:20
Letzter Beitrag: Annegret
  VBA: Anzeige und bearbeiten der aktiven Zelle mit Userform durch Doppelklick Gigbert62 8 1.589 24.02.2016, 20:31
Letzter Beitrag: Gigbert62
  Pivot-Tabelle -> Details anzeigen mit aktiven Datenschnitt Floh111 1 846 17.02.2016, 13:56
Letzter Beitrag: Floh111
  Name der aktiven Userform im Modul feststellen ChristaRohn 4 935 05.09.2015, 10:15
Letzter Beitrag: RPP63

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste