30. april 2009 - 20:55
Der er
6 kommentarer
Udtrække subject felt til og fra Excel
Hejsa
jeg er begyndt at lege lidt med visual basic, men jeg er gået lidt i stå med en opgave. Normalt kan man give alle filer et subject som du kan se i din windows explorer. Jeg er meget interesseret i at kunne trække disse subjects for en given sti ud i Excel.
Når dette så er gjort, så vil jeg have mulighed for at rette i navnene også kunne overskrive filernes subject felter med det som jeg har stående i excel.
Jeg håber det giver mening. Indtil videre har jeg kun kunne trække foldernavn samt filnavn ud. Jeg ville virkelig sætte pris på det hvis der er nogle af jer som kan hjælpe.
På forhånd tak
VB newbie
Måske kan nedenstående funktion inspirere lidt? Stik den et filnavn og en sti...:
Function ShowProperties(sFileName, sFolderPathspec)
Dim objShell, objFolder, objParsename, i, s, arr
arr = Array("0 Name ", "1 Size ", "2 Type ", "3 Date Modified ", "4 Date Created ", "5 Date Accessed ", "6 Attributes ", "7 Status ", "8 Owner ", "9 Author ", _
"10 Title ", "11 Subject ", "12 Category ", "13 Pages ", "14 Comments ", "15 Copyright ", "16 Artist ", "17 Album Title ", "18 Year ", "19 Track Number ", _
"20 Genre ", "21 Duration ", "22 Bit Rate ", "23 Protected ", "24 Camera Model ", "25 Date Picture Taken", "26 Dimensions ", "27 ", "28 ", "29 Episode Name ", _
"30 Program Description", "31 ", "32 Audio sample size ", "33 Audio sample rate ", "34 Channels ", "35 Company ", "36 Description ", "37 File Version ", "38 Product Name ", "39 Product Version ", "40 Keywords ")
Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.Namespace(sFolderPathspec)
Set objParsename = objFolder.Parsename(sFileName)
s = ""
For i = 0 To 40
s = s & arr(i) & ": " & vbTab & objFolder.GetDetailsOf(objFolder.Parsename(sFileName), i) & vbNewLine
Next
ShowProperties = s
End Function
Hej tjp
jeg har set den tråd med det, beklager det sene svar.
nu er mit problem at jeg ikke ved hvordan jeg kalder en function.
Hvis jeg copy paster det du foreslår, og trykker run, så vil den have mig til at lave en sub. Og tilsvarende laver jeg en sub og kopiere det ind, så udskifter den end sub linjen med end function(så jeg faktisk får to).
kan du afklare dette?