17. november 2010 - 15:52Der 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
Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
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?
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.
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.
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.
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.
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.
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..."??
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.
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.
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.
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.
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".
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.
Jeg plejer og blive ved endtil det lykkedes, og så lærer man jo altid lidt henad vejen.
Tak for hjælpen
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.