Avatar billede svla Mester
17. november 2010 - 15:52 Der er 21 kommentarer og
1 løsning

Problemer med VBA ved opgradering fra office 2007 til Office Professionel Plus 2010

Jeg har et excelark med en meget stor VBA-kode og 3-4 Userforms.
Efter jeg har opgraderet fra Office 2007 til Office Professionel Plus 2010, er der opstået følgende problem:
Når jeg åbner min Excelfil får jeg en meddelelsesbox med følgende fejlmeddelelse:

Object library invalid or contains reference to object  definitions that could not be found

Når jeg åbner VBA og herefter forsøger og åbne en bestemt Userform kommer fejlmeddelelsen igen, men hvad er der gået galt. Userformen kan ikke ses i VBA mere.

Håber nogen måske lige kan hjælpe mig på vej til hvad fejlen er, da det er et ark jeg bruger meget.
På forhånd tak
Avatar billede anlu Nybegynder
17. november 2010 - 16:06 #1
Bruger du nogle referencer i din vba-kode ud over standard, eksempelvis nogle af de andre office-biblioteker? (Tools->References)
Hvis du stadig har mulighed for at åbne filen i 2007 kan du jo sammenligne referencerne.

Uden at vide noget om Office 2010, så kunne der enten være sket det at referencen skal sættes eksplicit til en ny version, eller at en ny version af et refereret bibliotek ikke er bagudkompatibelt?
Avatar billede svla Mester
17. november 2010 - 17:50 #2
Hej !
Jeg har ikke mulighed for her og åbne filen i offfice 2007, men må vente til imorgen på arbejde.
I excelfilen er der 4 Userforms, men det er kun den ene der ikke kan åbnes, men jeg kan godt se kode og har kigget på den, et sted i koden retter den tekstfarven og angir en farvekode måske det er der det er galt, idet farvevalget er anderledes i 2010 versionen.
Avatar billede anlu Nybegynder
17. november 2010 - 19:17 #3
Det lyder plausibelt at det er den markerede kode der er problemet. Hvad står der i den pågældende linje?
Avatar billede svla Mester
17. november 2010 - 20:04 #4
Jeg har lige prøvet og deaktivere visse dele af koden i den Userform som det er galt med, jeg har også prøvet og slette hele Userformens kode med det løste heller ikke problemet.
Jeg må nok hellere prøve dit 1. forslag og sammenligne referencerne i 2007 med 2010, men dette kan jeg først gøre når jeg igen kommer på arbejde, har ikke længere 2007 her på PC'en.

Jeg arbejder videre med sagen idet jeg gerne skulle have mit ark til og fungere igen i version 2010.
Vender helt sikkert tilbage når jeg har fået det tjekket, men det bliver nok ikke før tors-fre.
Avatar billede svla Mester
21. november 2010 - 16:32 #5
Hej igen !

På mine Userform's har jeg på 2 af dem en statusbar, og jeg tror at det er dem som volder problemer.
I VBA i Office 2010 kan jeg ikke få sat en statusbar på en Userform.

- Så jeg tror at det liger er det som er problemet, men kan du hjælpe mig på vej med hvad der skal gøres i 2010 versionen så den kender statusberen fra office 2007.

Håber en eller anden måske kan hjælpe ?
Avatar billede anlu Nybegynder
21. november 2010 - 18:53 #6
Da jeg hverken har erfaring med status-baren eller med office 2010, kan jeg nok ikke hjælpe dig meget videre. Måske skal du bare lukke spørgsmålet og oprette et nyt der går specifikt på statusbar i 2010.
Avatar billede svla Mester
21. november 2010 - 21:02 #7
Tak for dit ærlige svar, jeg ved heller ikke rigtig hvad jeg skal gøre, men fandt ud af at der i VBA i office 2010 ikke umiddelbart kan oprettes en Progresbar /status bar på en Userform, - hvorfor ved jeg ikke rigtig endnu.
Herefter konkluderede jeg efter et par forsøg med en excelfil fra 2007 at det var statusbaren som var problemet.
Det er jo bare surt nu og opdage at de excelfiler med VBA kode og userform hvor der er en statusbar ikke fungerer i 2010
Jeg må arbejde lidt videre med sagen og se hvad jeg kan finde på.
Spørgsmålet lader jeg endtil videre stå åbent, hvis jeg finder en løsning lægger jeg den her.
Tak endtil videre for din deltagelse.
Avatar billede anlu Nybegynder
21. november 2010 - 22:55 #8
Fik du egentlig checket det med referencerne?

Jeg kan se at jeg fx på min maskine har både en ProgressBar v. 5.0 og 6.0. Har du checket at den version af ProgressBaren du bruger i din 2007 også er tilstede på den maskine hvor du har 2010?

Jeg synes det lyder meget mærkeligt at du generelt ikke skulle kunne oprette en progressbar i 2010. Du har prøvet "Additional Controls..."??
Avatar billede svla Mester
21. november 2010 - 23:34 #9
Jeg har prøvet "Additional Controls" og her er der følgende som kan sættes på toolboxen:
Progressbar Control, version 6.0
Statusbar Control, version 6.o
Når de klikkes af kommer de godt nok på Toolboxen, men når de sættes på Userformen kommer der en fejlmeddelelse som meddeler:
Element blev ikke fundet.

Det er faktisk derfor jeg tror at det er det, som er problemet og som giver problemer når en excelfil fra office 2007 med en progressBar på en Userform ikke kan åbne i office 2010.

Der må være et eller andet som mangler eller ikke er klikket af et sted.
Avatar billede svla Mester
21. november 2010 - 23:38 #10
Jeg glemte lige:
Har prøvet og kigge på det med referencer, men kan ikke rigtig se at der er noget galt, eller der mangler noget.
Ligeledes ser det heller ikke ud til at der er noget i referencer som måske ligner noget med hensyn til progressbar.
Avatar billede anlu Nybegynder
21. november 2010 - 23:39 #11
Avatar billede anlu Nybegynder
21. november 2010 - 23:49 #12
Jeg skulle måske lige skrive at MSCOMCTL.OCX indeholder progressbar-kontrollen for at du kan se sammenhængen.
Avatar billede svla Mester
22. november 2010 - 00:12 #13
Jeg prøver mig lige lidt frem, vender tilbage igen
Avatar billede svla Mester
27. november 2010 - 15:51 #14
Hej Igen !

Jeg bruger Windows 7, 64 bit version.
Har opdateret fra Office 2007 til Office 2010 Pro. plus.

Har ikke fået løst mit problem, men jeg kan godt se  at problemet er nok MSCOMCTL.OCX filen som ikke er registreret.

Har talt med andre som også har opdateret deres Office til 2010, men de har ikke dette problem, med og kunne få vist en statusbar på en Userform i VBA.

Jeg har forsøgt med gennem "Kør" og få registreret MSCOMCTL.OCX filen, ved og køre denne < REGSVR32 MSCOMCTL.OCX > men dette slog fejl.

Så har jeg forsøgt med CMD.. med følgende:
c:\windows\syswow64\regsvr32 mscomctl.ocx

Men ved her fik jeg følgende fejl: Mondulet "MSCOMCTL.OCX" blev indlæst, men kaldet til DLLRegisterServer mislykkedes med fejlkode 0x8002801c.

Jeg kan desværre ikke finde på mere og prøve lige nu, hvis du ikke har andre forslag, synes jeg du skulle lægge et svar, du har ihvertfald hjulpet mig med og finde ud af hvad problemet var.
Avatar billede anlu Nybegynder
27. november 2010 - 16:32 #15
Et sidste check inden jeg også er helt tør for ideer: Har du lagt MSCOMCTL.OCX i syswow64?
Avatar billede svla Mester
27. november 2010 - 16:45 #16
Ja
Har prøvet og lagt filen i System32 og syswow64, og samtidig kørt cmd... til begge mapper.
Nu kan jeg ikke lige huske, men da jeg kørte cmd ... til mappen system32 kom en fejlmeddelelse vedr. kompatibelproblemer med windows 64 bit.
- Måske har jeg dummet mig ved og købe en windows 7 64 bit version fremfor en 32 bit version.
Avatar billede anlu Nybegynder
27. november 2010 - 16:57 #17
Forresten: da du kørte regsvr32 i syswow64 - kørte du den så som administrator?
Avatar billede svla Mester
27. november 2010 - 17:17 #18
Det er på min private PC, - så det må vel være som administrator.
- Eller er der en bestemt måde det skal gøres på.
Avatar billede anlu Nybegynder
27. november 2010 - 17:45 #19
Jeg må indrømme vi er ude i emner hvor min viden ikke er særlig skarp - men hvis du højreklikker på ikonet for command prompt (og øvrige programmer) i start-menuen, så bør en af mulighederne være "Kør som administrator".
Avatar billede svla Mester
28. november 2010 - 12:42 #20
Hej Hej !

nu køre det.!!!!!!!!

Jeg har lige arbejdet lidt med sagen igen, og fik cmd ... kørt som administrator, og så blev MCCOMCTL.ocx registreret/aktiveret, og herefter kunne excelfiler hvor der var en Userform med statusbar åbnes.

Jeg vidste ikke det med højreklik på command ikonet.

Tusind tak for din hjælp, for den hjalp mig på rette vej.
Læg et svar til point.
Avatar billede anlu Nybegynder
28. november 2010 - 21:24 #21
Sådan! Fedt at det lykkedes, selvom det kostede nogle iterationer :o)
Avatar billede svla Mester
29. november 2010 - 18:17 #22
Jeg plejer og blive ved endtil det lykkedes, og så lærer man jo altid lidt henad vejen.

Tak for hjælpen
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
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

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