AutoCAD VBA - subscript out of range?

Status
Niet open voor verdere reacties.

thorry

Gebruiker
Lid geworden
14 nov 2008
Berichten
40
Hallo

Vorige jaar werkte mijn vba op autocad nog en nu krijg ik ineens de volgende melding met "subscript out of range"
Ik heb aan vba niets veranderd en ik heb geen idee hoe ik dit weer aan de praat krijg
Heeft iemand een idee hoe dit kan.
 

Bijlagen

Met AutoCAD heb ik nog nooit gewerkt en kan dus ook je bijlage niet openen.
Maar ik denk wel te kunnen aangeven waar het mis gaat als je die code hier plaatst.
 
test.dvb
Is een autocad project, ik heb even een afbeelding gemaakt met autocad2004.
Misschien kan ik later eens kijken wat er mis gaat

Untitled.png
 
ik maak hierbij gebruik van autocad2017 en voorheen werkte alles nog alleen nu niet meer?
 
APMT.NextDrawing
APMT.Previous
APMT.ReadFromDBase
APMT.WriteToDBase
Globals.DBBatch
MyUtils.UFI

en wat werkt dan niet? en krijg je dan foutmeldingen?
 
Laatst bewerkt:
Code:
D:\AMPT-CAD\AMPT-Info.mdb
Dit bestand is hardcoded in de code.
Bestaat dit bestand in dit pad?
Of zijn misschien de netwerklocaties aangepast?
 
Laatst bewerkt:
Dat is de verwijzing naar de database en deze klopt ook.
Maar wanneer ik het programma start krijg ik al gelijk een fout melding "subscript out of range"
Dus dat is wanneer ik het wil opstarten
 
Ik weet het ook niet meer.
Met ALT+F11 opent in autocad de VBA-editor, vervolgens kan je met F8 stap voor stap door de code lopen.
 
Klopt ik ben door de stappen heen gelopen en krijg dan de volgende melding?

run time error '381':
could not set the list property, invalid property arry index.

en dit heeft te maken met mijn combobox die ik gebruik

Private Sub Combo1_Change()
Dim fs, d, dc
Set fs = CreateObject("Scripting.FileSystemObject")
Set dc = fs.Drives
For Each d In dc
If d.IsReady Then
Combo1.AddItem (d)
End If
Next

End Sub

Sub Combo1_Click()
Dim fs, d, s
Mypath = Left(Combo1.Text, 1) & ":"
Batch.Caption = Mypath
ChangeDir Mypath, ".."
End Sub
 
Dat is een heel andere foutmelding dan waar je het in #1 over had.
Ook vind ik het een vreemde constructie om bij iedere wijziging in de combobox alle driveletters als keuze toe te voegen.
 
Ja klopt ik krijg als fout melding subscript out of range?
en als ik dan met f8 er door heen ga kom ik bij deze combobox uit wat voorheen gewoon gewerkt heeft?
en waarom deze nu niet werkt geen idee?

En waarom wijzigen van driveletters heeft te maken met soms moet je iets zoeken op een andere schijf.
maar dit heeft voorheen altijd gewerkt en nu komt ineens dit
 
Er is niks mis met het wijzigen van een driveletter uiteraard, het is alleen vreemd om dat lijstje te vullen in het Change event van de Combobox.
Als deze in een Userform staat, doe dat dan bij het laden van de Userform.

En je heb er niet bij verteld op welke regel je die runtime error '381' krijgt.
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan