VBA / VB6 - izvēlieties failu sarakstu ar programmu Windows Explorer

Atlasiet failu sarakstu (vai tikai vienu) ar API: GetOpenFileName.

Vienkāršota funkcija, izmantojot Windows Explorer.

Šis kods darbojas arī VBA, ja jūs regulējat vadības ierīces.

Jūs varat mainīt

  • nosaukums
  • Atsevišķa faila atgriešana, noņemot konstantu OFN_ALLOWMULTISELECT
  • Explorer vecā versija, noņemot konstantu OFN_EXPLORER

Kods

 '*********************************' Auteur -> Lermite222 'Sélection d'une liste de fichiers' avec l 'explorateur Windows' versija 1 '29 / 01/2012 '********************************* Privātās deklarēšanas funkcija GetOpenFileName Lib "comdlg32.dll" Alias ​​_ "GetOpenFileNameA" (pOpenfilename kā OPENFILENAME) Kā garš privāts veids OPENFILENAME lStructSize kā ilgs hWndOwner kā ilgs hInstance As Long lpstrFilter Kā String lpstrCustomFilter Kā String nMaxCustFilter As Long nFilterIndex Kā Long lpstrFile Kā String nMaxFile As Long lpstrFileTitle As Long lpstrFileTitle As string nMaxFileTitle Kamēr lpstrInitialDir As string lpstrTitle sTRING karogiem Kamēr nFileOffset As Integer nFileExtension As Integer lpstrDefExt As string lCustData Kamēr lpfnHook Kamēr lpTemplateName As string Beigu tips Publiska Enum LnFlags OFN_ALLOWMULTISELECT = & H200 OFN_CREATEPROMPT = & H2000 OFN_ENABLEHOOK = & H20 OFN_ENABLETEMPLATE = & H40 OFN_ENABLETEMPLATEHANDLE = & H80 OFN_EXPLORER = & H80000 OFN_EXTENSIONDIFFERENT = & H400 OFN_FILEMUSTEXIST = & H10 00 OFN_HIDEREADONLY = & H4 OFN_LONGNAMES = & H200000 OFN_NOCHANGEDIR = & H8 OFN_NODEREFERENCELINKS = & H100000 OFN_NOLONGNAMES = & H40000 OFN_NONETWORKBUTTON = & H20000 OFN_NOREADONLYRETURN = & H8000 OFN_NOTESTFILECREATE = & H10000 OFN_NOVALIDATE = & H100 OFN_OVERWRITEPROMPT = & H2 OFN_PATHMUSTEXIST = & H800 OFN_READONLY = & H1 OFN_SHAREAWARE = ​​& H4000 OFN_SHOWHELP = & H10 End Enum Private Sub Command1_Click () Dim Retour kā virkne, i kā integritāte Dim TB retour = ListeFichier () Ja retour = "" Tad iziet no sub 'L'utilisateur à canceler TB = sadalīt (retour, vbNullChar)' Sāraration de la liste si existe Ja UBound (TB) = 0 Tad 'un seul fichier sélectionner Par i = Len (TB (0)) līdz 1 solis -1 Ja vidū (TB (0), i, 1) = "" pēc tam iziet uz nākamo sarakstu1.AddItem Mid (TB (0 ), i + 1) TB (0) = pa kreisi (TB (0), i) vēl 'Une liste est disponnible Par i = 1 UBound (TB) saraksts1.AddItem TB (i) Nākamais beigas Ja Label1.Caption = TB (0) Beigas privātā subkomand2_Click () List1.Clear Label1 = "" Beigas apakšfunkcija ListeFichier () Kā virkne Dim Ret As L ong Dim LN_Ouv Kā OPENFILENAME LN_Ouv.lStructSize = Len (LN_Ouv) LN_Ouv.hWndOwner = Me.hWnd LN_Ouv.hInstance = App.hInstance LN_Ouv.lpstrFilter = "Musique (* .mp3) + Chr $ (0) +" * .mp3 "+ Chr $ (0) +" Tous (*. *) "+ Chr $ (0) +" *. * "+ Chr $ (0) LN_Ouv.lpstrFile = String $ (1024, vbNullChar) LN_Ouv.nMaxFile = Len (LN_Ouv.lpstrFile) - 1 'Longueur maximum de la sélection des fichiers. LN_Ouv.lpstrTitle = "Sélection liste de fichier". LN_Ouv. - 2) Beigas beigu funkcija 

Lejupielādēt

Lejupielādējiet projektu šeit.

Iepriekšējais Raksts Nākamais Raksts

Top Padomi