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

Ordner im Intranet auswählen

Ordner im Intranet auswählen
04.08.2004 16:20:49
Julia
Hallo,
ich habe ein Problem...
Ich muss die Ordner in dem Intranet auswählen.
das hat ganze Zeit funktioniert, nun nach einem Tag funktioniert es nicht mehr,
vielleicht ist was mit Bibliotheken nicht in Ordnung:
aber es scheint alles ok zu sein...
Dafür brauche ich schell32.dll und sie ist auch vorhanden...
Das komische ist, die Ordner werden lokal ausgewählt, und nur wenn ich ins Intranet gehe, zeigt er mir keine weitere Ordner an...
Wie SO NUR?
Hier ist der Screen Shot:
https://www.herber.de/bbs/user/9212.doc
Hier ist die Code:
Option Explicit
Private Declare

Function SHBrowseForFolder Lib "shell32.dll" Alias "SHBrowseForFolderA" (lpBrowseInfo As BROWSEINFO) As Long
Private Declare 

Function SHGetPathFromIDList Lib "shell32.dll" Alias "SHGetPathFromIDListA" (ByVal pidl As Long, ByVal pszPath As String) As Long
Private Const BIF_RETURNONLYFSDIRS = &H1
Private Const BIF_RETURNFSANCESTORS = &H8
Private Const BIF_BROWSEFORCOMPUTER = &H1000
Private Const BIF_BROWSEFORPRINTER = &H2000
Private Type BROWSEINFO
hOwner As Long
pidlRoot As Long
pszDisplayName As String
lpszTitle As String
ulFlags As Long
lpfn As Long
lParam As Long
iImage As Long
End Type
Public Enum Flag
'//Nach Drucker im Netzwerk suchen lassen
BrowseForPrinter = BIF_BROWSEFORPRINTER
'//Nach Computer im Netzwerk suchen lassen
BrowseForComputer = BIF_BROWSEFORCOMPUTER
'//Nach lokalem oder Netzwerkordner suchen lassen
BrowseForFolder = BIF_RETURNONLYFSDIRS
'//Nur lokale Ordner zur Auswahl zulassen
BrowseForLocalFolder = BIF_RETURNFSANCESTORS
End Enum
Public 

Function ShowSelection(ByVal hwnd As Long, Title As String, Optional dwFlag As Flag = BIF_RETURNONLYFSDIRS) As String
Dim bi As BROWSEINFO
Dim pidl As Long
Dim strFolder As String
strFolder = String$(255, vbNullChar)
With bi
'.hOwner = hWnd
.ulFlags = dwFlag
.pidlRoot = 0
.lpszTitle = Title
End With
pidl = SHBrowseForFolder(bi)
ShowSelection = IIf(SHGetPathFromIDList(ByVal pidl, ByVal strFolder), _
Left$(strFolder, InStr(strFolder, vbNullChar) - 1), _
vbNullString)
End Function

ich wäre euch sehr dankbar, wenn ich mir ein Tipp giebt...
Das ist echt ein super misses Gefühl, wenn das ganze Zeit funktioniert hat, und auf einmal nicht.... :´(
Viele Grüße
Julia

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Ordner im Intranet auswählen
04.08.2004 16:58:27
Nepumuk
Hallo Julia,
1. Wie sieht bei dir der Aufruf von "ShowSelection" aus?
2. Warum übergist du die Handelnummer der Mappe nicht an das Fenster? Das würde verhindern, dass dieses in den Hintergrund gerät, wenn du versehentlich in die Mappe klickst.
Gruß
Nepumuk
AW: Ordner im Intranet auswählen
04.08.2004 17:26:11
Julia
hallo Nepumuk,
danke für den Tipp, aber konntest du es genau zeigen, wo ich falsch gemacht habe,
oder am besten so ändern wie du es für nötig hälst...
Ich habe angst dass ich alles kapput mache :)
Es wäre echt lieb von dir... ;)
Viele Grüße
Anna
AW: Ordner im Intranet auswählen
04.08.2004 17:30:05
Nepumuk
Mit wem komuniziere ich hier eigentlich ? Julia? Anna?
die erste Frage hätte ich gern beantwortet. Wie sieht bei dir der Aufruf von "ShowSelection" aus?
Gruß
Nepumuk
Anzeige
AW: Ordner im Intranet auswählen
04.08.2004 17:43:54
Julia
Hi :)
eigentlich heiße ich Anna wennich ehrlich bin...
Julia das ist quasi Spitzname.
Du kannst mir beides sagen:
Und das ist die Antwort auf die zweite Frage:
das hast du doch gemeint oder?
Ich fahre jetzt nach hause, und komme erst in eine Stunde ins Internet, ich hoffe du bist noch da...
Danke dir und bis später :)
CODE:
Private Const Attr = vbNormal Or vbReadOnly Or vbHidden Or _
vbSystem Or vbVolume Or vbDirectory Or _
vbArchive
Private strFolder As String

Private Sub ComboBox1_Change()
Dim sFileName  As String
Dim sFileFullName  As String
sFileName = ComboBox1.Text
sFileFullName = strFolder & sFileName
CSS_File_Aendern (sFileFullName)
' GTC_File_Aendern (sFileFullName)
End Sub


Private Sub CommandButton1_Click()
strFolder = ShowSelection(1, "Ordner wählen", BrowseForFolder)
strFolder = strFolder & "\"
Label1.Caption = strFolder
Dim Pfad As String, Name As String
Dim x As Long
MousePointer = vbHourglass
Name = Dir$(strFolder, Attr)
ComboBox1.Clear
'    If Name = "" Then
'            MsgBox ("Folder is not select!")
'            Else
'    If Name = "" Then
'    MsgBox ("Folder is not select!")
'    End If
Do While Name <> ""
If Name <> "." And Name <> ".." Then
x = GetAttr(strFolder & Name)
If (x And vbDirectory) <> 0 Then
ComboBox1.AddItem "." & UCase(Name)
'ComboBox1.AddItem "." & Name
Else
ComboBox1.AddItem LCase(Name)
'ComboBox1.AddItem Name
End If
End If
'End If
Name = Dir(, Attr)
'End If
Loop
ComboBox1.Enabled = True
MousePointer = vbDefault
End Sub

Anzeige
AW: Ordner im Intranet auswählen
04.08.2004 21:54:46
Nepumuk
Hallo Anna,
soweit ich das mit meinem keinem Netz testen kann, ist eigentlich alles in Ordnung. Frag mal deinen Admin, ob er an der Firewall oder an Zugriffsrechten etwas geändert hat.
Den Punkt 2 kannst du folgendermaßen ändern. In dem Modul, in dem:
Private Declare Function SHBrowseForFolder....
Private Declare Function SHGetPathFromIDList ...
steht, fügst du folgende Zeile ein:
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
und die Codezeile, in der:
Public Function ShowSelection(ByVal hwnd As Long, Title As String, Optional dwFlag As Flag = BIF_RETURNONLYFSDIRS) As String

Dim bi As BROWSEINFO
Dim pidl As Long
Dim strFolder As String

strFolder = String$(255, vbNullChar)
With bi
' .hOwner = hwnd
.ulFlags = dwFlag
.pidlRoot = 0
.lpszTitle = Title
End With
.
.
.
steht, änderst du folgende Zeile:
.hOwner = FindWindow("xlMain", vbNullString)
das Hochkomma zum auskommentieren der Zeile musst du natürlich rausnehmen.
Leider kann ich, ohne mich an deinen Rechner zu setzen, nicht viel mehr sagen. Aber so wie es aussieht, hast du bzw. das Programm keinen Vollzugriff aus das Netz.
Sorry.
Gruß
Nepumuk
Anzeige
AW: Ordner im Intranet auswählen
04.08.2004 21:25:51
Julia
Hallo Nepumuk,
ich bin wieder da hat länger gedauert...
Hast du vielleicht den Fehler gefunden? Ich finde es immer noch nicht...
... :)
Viele Grüße

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige