- er det en bestemt fil eller skal brugeren udvælge den - skal pdf'en gemmes samme sted som den oprindelige fil og med samme navn og så blot .pdf som "efternavn" - hvordan ønsker du at lave knappen til Word? Vil du kode en knap (som kommer til at ligge på add-ins/tilføjelsesprogram-fanen eller vil du lave din egen "rigtige" knap i Ribbon?)
Tak for svar og interesse. For at svare på spørgsmålene:
1) Det var meningen at brugeren skulle udvælge filen (eller biblioteket - hvis man kunne tage et helt bibliotek af gangen)
2) Der var oprindeligt ment, at pdf-en skulle gemmes i et specifik bibliotek afhængig af oplysninger, som nuværende sti og filnavn, herunder indhold i filen. (Således at makroen valgte - og det dermed ikke blev brugervalgt - med de 'ulemper' det har)
Men har fundet ud af, at der ikke er nogen bogmærker at kunne anvende. Har dermed kun sti (det første bibliotek (101) i fx: c:\101\Relevant navn\Osv\) og filnavn (og i fil-navn er det de sidste 4 karakterer, hvor det foranstående antal karaktere er et variabelt antal). Det kan bruges til fornuftig placering og navngivning.
Hvis man kan bruge dette (som fx i Excel) vil det være supert.
3) Jeg er usikker på begrebet ribbon. Havde blot forstillet mig en hurtigvalgsknap via et tilføjelsesprogram.
Ærgerligt at man ikke selv kan kode dette/holde det ved lige. (Altså at det fungere lidt som VBA i Excel). Eller er det mig der ikke kan gennemskue det?
Software og FreeWare har det jo med at have lidt beskyttelse af kildekoden, hvilket også er gældende i dette tilfælde. FreeWare laves altid i håb om at timerne en dag kan tjenes hjem igen. Det er selvfølgelig tilladt at komme med ønsker direkte til producenten.
Hvis du vil have noget, som du selv kan rette i, kan nedenstående måske bruges.
************** Public Sub GemAlleDocsSomPDF() Dim objDialog As FileDialog Dim objFS As Object Dim strFolder As String Dim objFolder As Object Dim objFile As Object Dim strFileName As String Dim strNewFileName As String Dim objDocument As Document
Set objDialog = Application.FileDialog(msoFileDialogFolderPicker) Set objFS = CreateObject("Scripting.FileSystemObject")
With objDialog If .Show = -1 Then strFolder = .SelectedItems(1) Set objFolder = objFS.GetFolder(strFolder) For Each objFile In objFolder.Files If objFile.Type = "Microsoft Office Word 97 - 2003 Document" Or objFile.Type = "Microsoft Office Word Document" Then strFileName = objFile.Path strNewFileName = objFS.BuildPath(strFolder, objFS.GetBaseName(strFileName) & ".pdf") Set objDocument = Documents.Open(strFileName) If Not objDocument Is Nothing Then ActiveDocument.ExportAsFixedFormat OutputFileName:=strNewFileName, ExportFormat:=wdExportFormatPDF, _ OpenAfterExport:=False objDocument.Close False End If End If Next objFile End If End With
Set objDialog = Nothing Set objFS = Nothing Set objFolder = Nothing Set objDocument = Nothing End Sub **************
FlemmingDahl> Det virker bare ;-). Efter at have sikret, at add-in var placeret på: C:\Documents and Settings\Bruger\Application Data\Microsoft\Word\START. Så fungerer det perfekt, også hver gang man åbner Word.
Wordhajen> Forsøgt med din løsning - fordi det absolut tricker at kunne lære noget mere om word (som i excel). Jeg skal nok bruge det noget mere for at forstå det fuldt ud. Men ud fra koden kan jeg jo godt se at det ligner Excel-koden - men alligevel er der jo en verden til forskel. Har installeret den i word (Normal.dot - NewMacros) - tilføjet den som en hurtig adgangs knap. Kan starte op. Men når man vælger et bibliotek med '.doc'-filer så kan man ikke se nogen - og dermed ikke vælge nogen. Kan ikke helt gennemskue det. Er det denne linie der skal være anderledes:
If objFile.Type = "Microsoft Office Word 97 - 2003 Document" Or objFile.Type = "Microsoft Office Word Document" Then
Endnu engang for begge: Tusind tak. Dette har været særdeles lærerigt. Og vil gerne lære endnu mere om dette, herunder færdiggøre den kode som Wordhajen har forslået.
Omkring point bliver det jo sværere - når jeg pludselig har 2 gode brugbare løsninger.
Jeg var ikke ude på at snuppe point fra flemmingdahl, som lavede en løsning til dig først; synes bare, at det var sjovt at lave koden. Så ingen point til mig.
Min kode vælger alle Word-dokumenter i den folder, som du vælger. Du skal derfor ikke udpege en fil, men alene en folder. Jeg forstod på din kommentar 01/10-2007 06:18:12, at det bedste var, hvis den tog alle dokumenter i en folder.
Til begge: Jeg havde en klar fornemmelse at ingen af jer hjalp pga point, men fordi I havde en positiv interesse. Tusind tak for det. Min pointe var blot - at jeg havde fået meget stor hjælp på 2 gode måder.
Til word-hajen: Så kan jeg ikke få koden til at virke - jeg stopper ved dialogboks åben - der sker ikke noget. Tester/prøver igen i morgen - nu skal det lykkes.
Jeg ved det ikke. Jeg slettede det - forsøgte igen - og udenfor server/fælles fildrev mm. Så virkede det.
Efterfølgede testet det på server/fælles fildrev - hvor der ikke var problemer. Jeg havde nok fået blandet for meget sammen. Det sker jo i kampens hede.......
Ha-ha... ja, det har du ret i. Men hovedsagen er, at det fungerer :-)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.