Avatar billede VildeHest Praktikant
19. februar 2016 - 09:12 Der er 4 kommentarer og
1 løsning

Excel 2007/2013 med VBA/ActiveX

Hej,

Jeg har laver et værktøj i excel 2007 der indeholder en masse vba kode og nogle activex objekter.

Når der er en bruger på en excel 2013 der gemmer filen får jeg fejlmeddelse på alle excel 2007 maskinerne:
"Compile Error: Can't Find Project or Library"

Herefter kan filen nu kun åbnes og fungere på excel 2013.

Jeg har prøvet følgende forslag uden held:
http://excelmatters.com/2014/12/10/office-update-breaks-activex-controls/
https://support.microsoft.com/en-us/kb/3025036

Jeg har også fuldt opdatere to maskiner med de to forskellige versioner uden held.

Er der nogen der kan komme med gode forslag til hvordan jeg får det til at virke?
Avatar billede Dan Elgaard Ekspert
19. februar 2016 - 10:04 #1
Excel 2007 viser sit hæslige ansigt igen :-)
Fatter ikke, at folk stadig benytter en så fejlbehæftet udgave af Excel - selv Excel 2003 er bedre end det l***!

Anyway, det kunne være rart, at se kodelinjen, der gi'r fejl?

det kunne være enten linket til et object, der ikke virker efter deklarationen, eller måske en VB Reference, der mangler?

Kan vi få kode stumpen, der gi'r fejlen at se?
Avatar billede VildeHest Praktikant
19. februar 2016 - 10:21 #2
Den går i stå ved:

Private Sub Workbook_Open()
Application.ScreenUpdating = False
ActiveWindow.ScrollRow = 2
ActiveWindow.ScrollRow = 1
Worksheets("Ny indtastning").Activate
Range("l18").Select
Selection.ClearContents
Worksheets("Rediger sag").Activate
Range("l18").Select
Selection.ClearContents
Worksheets("Ny indtastning").Activate
Sheets("ny indtastning").Unprotect
Nysag
Worksheets("Ny indtastning").DTPicker1.Value = DateSerial(Year(Date), Month(Date), Day(Date))
Worksheets("Ny indtastning").DTPicker2.Value = DateSerial(Year(Date), 12, 31)
Sheets("ny indtastning").Protect
Worksheets("Rediger sag").Activate
Range("c10").Select
Application.ScreenUpdating = True
End Sub

Her går den i stå ved:
Worksheets("Ny indtastning").Activate

Fjerner jeg dette makrodul, går den herefter i stå ved datopicker (DTPicker1). Så jeg har det lidt mistænkt for ikke at være kodedelen der er fejl ved.

Der er umiddelbart heller ikke nogle referencer der er "Missing".
Avatar billede Dan Elgaard Ekspert
19. februar 2016 - 11:56 #3
Der var fejlen!

DTPicker er IKKE kompatibel mellem Excel 2007 og ældre versioner, og så Excel l2010 og nyere versioner!
Så vidt jeg husker, så er DTPicker ikke engang muligt, at benytte i 64-bit versioner af Excel...

Hvis du udluser DTPicker, så vil din kode virke igen...

Du kan finde nogle alternativer til DTPicker her:
http://www.mrexcel.com/forum/excel-questions/735612-dtpicker-alternative.html
Avatar billede VildeHest Praktikant
19. februar 2016 - 14:13 #4
Jeg bukker og siger mange tak. Den troede jeg ikke kunne løses.

Utroligt at den ikke melder det fra starter og at det kan ødelægge hele filstrukturen :)
Avatar billede Dan Elgaard Ekspert
19. februar 2016 - 17:26 #5
Velbekomme - og, helt enig i dine betragtninger...
...det er forøvrigt noget rigtigt mange folk er vildt utilfreds med, hvis du læser diverse indlæg rundt omkring på nettet - at Microsoft sådan har ødelagt mange projekter, der er udviklet i tidens løb, ved, med et slag, at ændre/stoppe DatePicker!
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
Kategori
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

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