..|| Blog || Produkti/Storitve || MExcel || MDodatki || 300 nasvetov ||..

Kako izbrati mapo (direktorij) ?

Pomoč pri izdelavi makrov

Kako izbrati mapo (direktorij) ?

OdgovorNapisal/-a Buba » Po feb 09, 2009 2:09 pm

Izdelal sem makro, ki kot vhodni podatek potrebuje ime mape v računalniku. Ali obstaja kak kontrolnik, ki zna prebrati imena map, diskov? (Nekaj takega kot DirListBox, DriveListBox v VB6.)
Kako jih naložiš v računalnik, da jih Excel prepozna?

Lep dan!
Buba
Buba
 
Prispevkov: 81
Pridružen: Sr mar 12, 2008 11:49 am
Kraj: Maribor



Matjazev.NET
 

OdgovorNapisal/-a admin » Če feb 12, 2009 9:20 pm

Zaradi dopusta malce zapoznel odgovor, pa vendar:

Koda: Izberi vse
Option Explicit

Public 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


Declare Function SHGetPathFromIDList Lib "shell32.dll" _
        Alias "SHGetPathFromIDListA" (ByVal pidl As Long, ByVal pszPath As String) As Long

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

'
' www.matjazev.net
' februar 2009

Function IzberiMapo()
  Dim dirInfo As BROWSEINFO
  Dim path As String
  Dim izbran As Long, info As Long, pos As Integer

  IzberiMapo = ""
 
  dirInfo.pidlRoot = 0&
  dirInfo.lpszTitle = "Izberite mapo..."
  dirInfo.ulFlags = &H1
  info = SHBrowseForFolder(dirInfo)

  path = Space$(512)
  izbran = SHGetPathFromIDList(ByVal info, ByVal path)
  If izbran Then
    pos = InStr(path, Chr$(0))
    IzberiMapo = Left(path, pos - 1)
  End If
End Function

lp,
Matjaž Prtenjak
Administrator
admin
Site Admin
 
Prispevkov: 3526
Pridružen: Sr jul 20, 2005 10:06 pm

OdgovorNapisal/-a Buba » Pe feb 13, 2009 9:10 am

Hvala za odgovor!
Bom poizkusil kako stvar dela, pa se javim.
Zgleda precej zapleteno.
Buba
Buba
 
Prispevkov: 81
Pridružen: Sr mar 12, 2008 11:49 am
Kraj: Maribor


Vrni se na VBA

Kdo je prisoten

Po forumu brska: 0 registriranih uporabnikov in 2 gostov

cron