Eksempel på macro der kalder 'AcroRd32.exe' med argumentet 'C:\Program Files\Adobe\Reader 9.0\Reader\plug_ins\Annotations\Stamps\Words.pdf'. Bemærk mellemrum mellem de to:
Lige pt. har jeg også defineret en command line argument inde i C#-projektet's properties. Denne bliver overskrevet når jeg kalder C#-programmet fra VBA-koden, hvilket er det jeg ønsker.
Hvis jeg kører programmet fra min C#-editor (MS Visual C#2010 express), er det dette argument, og selvfølgelig ikke det fra VBA der anvendes, hvilket også er det jeg ønsker.
Men hvis jeg finder exe-filen udenom min editor og udenom VBA, altså via mapper (..\bin\Debug\program.exe), så får jeg bare en fejl: "Program har fundet en fejl og afsluttes". Hvorfor tager den ikke det command line argument jeg har specificeret?
Det er lidt svært at forklare, men håber det giver mening. Det jeg bare forsøger at gøre er, at definere en default command line argument, som så erstattes hvis man specificere andet.
Lige et sidste tillægsspørgsmål: Jeg ville gerne anvende en string, som angiver stien på den aktuelle workbook (inkl navnet på filen).
Dim filePath As String filePath = ThisWorkbook.Path
Men overstående returnere ikke navnet på filen, og desuden er stien ikke korrekt når man man parser den til C#, hvis stien indeholder et mellemrum. Har du et løsningsforslag?
Velbekomme... Det var også omtrent sådan jeg ville løse det sidste. :-)
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.