Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Flytta VBA-applikationer (för Excel) mellan två datorer funkar ej.

Postades av 2001-07-04 16:23:00 - Niklas Jansson, i forum visual basic - allmänt, Tråden har 9 Kommentarer och lästs av 654 personer

När jag försöker använda en VBA-applikation på en dator jag inte gjort programmet på uppstår ett märkligt problem.
Det är nämligen så att alla funktioner, objekt, subrutiner osv. fungerar UTOM de inbyggda (Len(), Left(), osv.).
Som förklaring ger VB att "Sub or Function not found in Reference or Project" eller något liknande.

Hela innebörden är alltså att mitt program inte får åtkomst till de standardobjekt som finns i den ena av de två referenserna som inte kan tas bort eller ändras.

VÄLDIGT tacksam för Svar


Svara

Sv: Flytta VBA-applikationer (för Excel) mellan två datorer funkar ej.

Postades av 2001-07-04 16:38:00 - Andreas Hillqvist

Beror på att någon av dina referenser inte är 100% binärt kompatibla. Detta kan bero på att du t.ex har olika versioner av ado, windows common controlls eller vb activex dll/exe.

Testa med att kryssa bort de referenser såm går att kryssa bort. Välj ok. Gå in i referens dialogen och lägg till dem igen. Bör nu fungera.


Svara

Sv: Flytta VBA-applikationer (för Excel) mellan två datorer funkar ej.

Postades av 2001-07-04 16:46:00 - Niklas Jansson

Problemet är att de båda datorerna refererar till samma filer.

Referensernas filnamn är:
V:\office\32us97.007\msapps\vba\vb332.dll

V: är en nätverksdisk. Det här är helt SJUKT!!


Svara

Sv: Flytta VBA-applikationer (för Excel) mellan två datorer funkar ej.

Postades av 2001-07-05 07:36:00 - Eventine Elessendil

Om någon endaste referens är felaktig så kan man få såna fel. Är det något som måste vara registrerat som du installerat på din utvecklingsdator men bara har filerna till i användardatorn? Kan vara något sådant med. I så fall så reagerar inte VBA på att referensen är felaktig förren den anropas (rätta mig om jag har fel, någon).
Testa denna kod:

Sub KontrolleraReferenser()
Dim i As Integer
On Error Resume Next
For i = 1 To ThisWorkbook.VBProject.References.Count
Debug.Print ThisWorkbook.VBProject.References.Item(i).Name, _
ThisWorkbook.VBProject.References.Item(i).FullPath, _
ThisWorkbook.VBProject.References.Item(i).IsBroken
Next i
End Sub

Den söker igenom samtliga markerade referenser och skriver dem i direktfönstret i formen: namn, sökväg, trasig(true/false).
Hoppas det var till någon hjälp.
/EE


Svara

Sv: Flytta VBA-applikationer (för Excel) mellan två datorer funkar ej.

Postades av 2001-07-05 13:11:00 - Niklas Jansson

Tack för tipset!
Det fanns även en versionsegenskap som är praktisk (major/minor).
Jag funderar ändå på om detta verkligen stämmer. De ENDA funktionerna osv. som inte fungerar är de som är med i standarden.
Enligt hjälpen så finns standarden i de referenser som inte går att välja bort - Visual Basic For Applications och Microsoft Excel 8.0 Object Library.
Det har ingenting med Excel att göra - alla de objekten funkar fint. Det måste helt enkelt vara VBA. Men denna är placerad på V: - en nätverksdisk som alla datorer har tillgång till och Excel är också kopplad till just den filen. Jag har väldigt svårt att tänka mig att samma fil har olika versioner...


Svara

Sv: Flytta VBA-applikationer (för Excel) mellan två datorer funkar ej.

Postades av 2001-07-05 15:21:00 - Eventine Elessendil

Felet låter ändå som att det är ett referensfel, och det är alltså troligtvis inte i den referensen som man tror skall vara fel, utan om en enda referens är felaktig så kan det uppstå fel på helt andra ställen på detta vis.
Fick du False (IsBroken=False) på alla referenserna i ditt projekt på användardatorn?
Skiljer det något i konfigurationen av datorerna emellan? Alltså, vart Office ligger, vart någon Add-In ligger o s v.


Svara

Sv: Flytta VBA-applikationer (för Excel) mellan två datorer funkar ej.

Postades av 2001-07-05 16:39:00 - Niklas Jansson

Jag har just kollat. Alla heter samma, har samma sökväg, samma versioner, ingen är broken... Den enda skillnaden är att sökvägen till OLE Automation är
C:\WINDOWS\SYSTEM\stdole2.tlb
i användardatorn och
c:\windows\SYSTEM\StdOle2.Tlb
i Utvecklingsdatorn.

Det värsta av allt är att jag vet att det går att lösa... Jag sommarjobbar nämligen, och det jag gör är bland annat att uppdatera sådant jag programmerade förra året. Då var det samma problem, men jag löste det!

SNÄLLA NÅGON HJÄLP MIG!!!
Jag ska testa med att göra ett add-in av det. (Fast jag vet att det inte fungerade förra året)


Svara

Sv: Flytta VBA-applikationer (för Excel) mellan två datorer funkar ej.

Postades av 2001-07-06 09:18:00 - Niklas Jansson

Jag tror jag har kommit på ett sätt, men jag har inte haft möjlighet att testa det än (jag kommer inte åt någon annan dator...).
Om man kompilerar hela skiten, så löstes vissa problem jag just fick på utvecklingsdatorn. Jag har vad jag kommer ihåg inte kompilerat programpaketet en enda gång när jag har försökt köra det på annan dator.
Det finns två sätt. Antingen kompilera på utvecklingsdatorn eller på användardatorn. Det skulle vara käckt om någon som är bra på VBA skulle kunna berätta om det finns anledning till att detta skulle fungera, annars är det lika bra jag fortsätter leta. Om det fungerar (jag skriver in om det gör det) så hoppas jag att detta hjälpt någon iallafall.


Svara

Sv: Flytta VBA-applikationer (för Excel) mellan två datorer funkar ej.

Postades av 2001-07-06 13:24:00 - Eventine Elessendil

Ja, kompileringen är bra att köra. Som jag ser det så är det bästa sättet att hitta många av slarvfelen man lätt kan göra annars.
Andra detaljer som ställt till det för mig någon gång är att man glömmer det där lilla Option Explicit överst på alla kodsidor. Att inte deklarera är ju inte så bra, som vi alla vet. Att komma ihåg att deklarera alla variabler kan vara svårt ibland utan den "hjälpen".
Skriv gärna igen när du får ordning på det. Är ju nyfiken på vad det är som är boven i dramat.
/EE *nyfiken*


Svara

Sv: Flytta VBA-applikationer (för Excel) mellan två datorer funkar ej.

Postades av 2001-07-09 13:21:00 - Niklas Jansson

ÄNTLIGEN!!!
Jag har löst det. Inte en särskilt elegant lösning kanske, men ändå.
Jag refererar explicit till VBA så fort jag anropar en VBA-funktion -
VBA.Left() osv.
Jag har alltså ännu inte kommit på varför, men jag har en lösning :->
Om någon skulle komma på ett vettigare sätt så är jag tacksam för detta är verkligen inte vackert!


Svara

Nyligen

  • 14:24 CBD regelbundet?
  • 14:23 CBD regelbundet?
  • 14:22 Har du märkt några verkliga fördel
  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 620
27 953
271 709
733
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies