Avatar billede folj Forsker
06. september 2021 - 12:31 Der er 16 kommentarer og
1 løsning

excel Åbne fil uden makro-afvikling ved start

Hej Venner !
Jeg er kommet lidt i knibe, med en uheldig vba-programmering.

Min plan indholder naturligvis både fremtiden og så ligger der også nogle gamle rækker der indeeholder fortiden.

Jeg har en vba-programmering liggende i filen, så når filen åbnes, så afvikles koden der tester om rækker er mere ened 30 dage gamle, så slettes de.

Nu har jeg blot det problem at det er netop disse gamle rækker jeg skal se hvad planen var for disse dage, selvom de er mere end 30 dage gamle.

Hvordan åbner jeg filen uden afvikling af af denne hændelses-procedure.
men jeg sjkal kunne gøre det uden at åbne filen, for så bliver koden afviklet?
Kan jeg gør det uden at åbne filen?
Avatar billede thomas_bk Ekspert
06. september 2021 - 12:45 #1
jeg tænker du kan åbne excel i safe mode eller sætte dine sikkerhedsindstillinger i excel til ikke at afvikle makro kode.
Avatar billede Jan K Ekspert
06. september 2021 - 13:12 #2
Hold Skift nede mens du dobbeltklikker på filen. Som altid med macroer - kopier filen før du prøver.
Avatar billede 220661 Ekspert
06. september 2021 - 19:25 #3
Du burde vel kunne tilde en knap uden for udskrivningsfeltet der kører lige den vba kode, så du når at tjekke før der slettes?
Jeg havde et par stykker ved siden af, da jeg skrev regninger i det forrige firma jeg var ansat i. Mine var "gem som makro" og "tildel faktura nummer" når jeg var færdig med indtastning. Jeg fik fin hjælp til det her fra gruppen dengang 😃
Avatar billede Jan K Ekspert
06. september 2021 - 21:11 #4
#3 problemet er jo at koden allerede er der ,og afvikles på workbook_open hændelsen. Så kan ikke tildele den til en knap før linjerne allerede er slettede.
Avatar billede 220661 Ekspert
06. september 2021 - 21:42 #5
#4 Er slet ikke ekspert på vba som jeg også beskrev før.
Men koden bør vel så kunne tilrettes så den ikke kører når filen åbnes, og skal kun køres når man trykker på knappen ?
Avatar billede Jan K Ekspert
06. september 2021 - 22:49 #6
#5  For ar rette koden så den ikke kører før der trykkes på en knap, skal filen åbnes. Og som det er i dag, kører koden automatisk hver gang filen åbnes - og så er det for sent at rette, da linjerne allerede er slettede.
Avatar billede folj Forsker
07. september 2021 - 08:00 #7
@Jan K.
Du har helt ret Jan K.
Den løsning jeg er afhængig af, skal kunne bruges uden at åbne filen.
Avatar billede jens48 Ekspert
08. september 2021 - 12:42 #8
Du kan åbne filen uden at aktivere makroen hvis du går ind i File - Options - Trust Center - Trust center settings - Macro settings - og vælge Disable all macros without notification
Avatar billede Jan K Ekspert
08. september 2021 - 13:48 #9
#8 Jeg har lige eksperimenteret med den løsning, og det virker ikke i min Excel365. Heller ikke holde Shift nede, når jeg dobbeltklikker. Workbook_Open makroen afspilles under alle omstændigheder. Jeg har også prøvet bare at omdøbe filen til XLS, men den 'husker' at det er en Excelfil med aktive makroer.
Avatar billede thomas_bk Ekspert
08. september 2021 - 13:52 #10
Kan du evt åbne filen i en web udgave af excel som ikke afspiller makroer?
Avatar billede falster Ekspert
08. september 2021 - 14:39 #11
Prøv evt. dette langskud - (på en kopi af filen kan det aldrig skade, højst mislykkes):

Udpak xlm filen med 7-zip eller anden pakker.

Fjern filen "vbaProject.bin" fra det udpakkede.

Pak det resterende igen til en xls-fil og prøv om den kan åbnes.
Avatar billede jens48 Ekspert
08. september 2021 - 15:18 #12
Jeg har prøvet følgende af her:
1. gemt en fil med en macro_open makro
2. omdøbt filen ved at slette "m" i xlsm
3. åbnet filen. Den kommer ud med en advarsel om at fil format og extension ikke passer sammen
4. åbnede alligevel. Workbook_open makroen kørte ikke.
Avatar billede Jan K Ekspert
09. september 2021 - 07:52 #13
#12 Hvilken version af Excel arbejder du i?
Avatar billede jens48 Ekspert
09. september 2021 - 08:45 #14
365 (version 2102)
Avatar billede folj Forsker
09. september 2021 - 09:52 #15
@jens48
Det blev jens48's løsning (et lidt beskidt trick) som han beskrev i #12 der blev løsningen.
Så på den måde fandt jeg en løsning på at tilgå filen med de gamle rækker der var >30 dage gamle, og uden at VBA-automatiseringen gik ind og slettede de gamle rækker.
Jeg takker for jeres forskellige kreative forslag, og takker for jeres angagement i løsningen af mit problem.
Avatar billede thomas_bk Ekspert
09. september 2021 - 11:02 #16
Stadig meget mystisk og ganske foruroligende at makro koden afvikles når du i sikkerhedsindstillingerne slog afvikling af makrokode fra. Hmmm.
Avatar billede folj Forsker
09. september 2021 - 11:20 #17
@thomas_bk:
Jeg kunne blot ikke lige gennemskue di forslag om at åbne filen i SafeMode, Derfor gik jeg videre til noget jeg unne gennemskue hvordan jeg kunnne udføre.

men dig andet forslgag med at åbne filen i explorer, virkede iøvrigt også - det testede jeg efterfølgende..
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester