TreeView

17/08/2008 - 19:10 von Mike Berger | Report spam
Hallo zusammen,

ich habe mit Hilfe von Stefan ein TreeView Object auf meiner UserForm
konfiguriert. Es làuft auch ganz gut.

Hier der Code:

TreeView1.Nodes.Clear
Set fso = CreateObject("Scripting.FileSystemObject")
Set fld = fso.GetFolder("O:\Briefe\Makros\")
For Each subfld In fld.SubFolders
Set neuereintrag = TreeView1.Nodes.Add(, , , subfld)
For Each fil In subfld.Files
 TreeView1.Nodes.Add neuereintrag.Index, tvwChild, , _
 Replace(fil, subfld.Path & "\", "")
Next
Next

Nun möchte ich aber, dass "O:\Briefe\Makros\" in der Auswahlliste gar nicht
angezeigt wird und ebenfalls .txt nicht, sondern nur das Unterverzeichnis
und der Dateiname ohne Endung.

Geht das überhaupt ?

Mike
 

Lesen sie die antworten

#1 stefan onken
18/08/2008 - 09:36 | Warnen spam
On 17 Aug., 19:10, Mike Berger wrote:
Hallo zusammen,

ich habe mit Hilfe von Stefan ein TreeView Object auf meiner UserForm
konfiguriert. Es làuft auch ganz gut.

Hier der Code:

TreeView1.Nodes.Clear
Set fso = CreateObject("Scripting.FileSystemObject")
Set fld = fso.GetFolder("O:\Briefe\Makros\")
For Each subfld In fld.SubFolders
Set neuereintrag = TreeView1.Nodes.Add(, , , subfld)
For Each fil In subfld.Files
 TreeView1.Nodes.Add neuereintrag.Index, tvwChild, , _
 Replace(fil, subfld.Path & "\", "")
Next
Next

Nun möchte ich aber, dass "O:\Briefe\Makros\" in der Auswahlliste gar nicht
angezeigt wird und ebenfalls .txt nicht, sondern nur das Unterverzeichnis
und der Dateiname ohne Endung.

Geht das überhaupt ?

Mike



hallo Mike,
meinst du so?

TreeView1.Nodes.Clear
Verz = "O:\Briefe\Makros\"
Set fso = CreateObject("Scripting.FileSystemObject")
Set fld = fso.GetFolder(Verz)
For Each subfld In fld.SubFolders
Set neuereintrag = TreeView1.Nodes.Add(, , , _
Replace(subfld, Verz, ""))
For Each fil In subfld.Files
TreeView1.Nodes.Add neuereintrag.Index, tvwChild, , _
Replace(Replace(fil, subfld.Path & "\", ""), ".txt", "")
Next
Next

dann wird die Überwachung des Treeview allerdings etwas umstàndlicher:

Private Sub TreeView1_Click()
Datei = "O:\Briefe\Makros\" & _
TreeView1.SelectedItem.FullPath & ".txt"
If Dir(Datei) <> "" Then
MsgBox Datei &" ist eine txt-Datei"
' Code zum Datei öffnen und einlesen
End If
End Sub

Da "O:\Briefe\Makros\" in mehr mals benötigt wird, könntest du dafür
eine globale Variable anlegen.

Gruß
stefan

Ähnliche fragen