Fout met Instr

Status
Niet open voor verdere reacties.

remcoof

Gebruiker
Lid geworden
9 jul 2005
Berichten
38
Ik krijg een foutmelding bij de volgende code:

Code:
For i = 0 To Len(strBestandNaam)
    If InStr(i, strBestandNaam, "\") > 0 Then
        voorlaatsteTeken = laatsteTeken
        laatsteTeken = InStr(i, strBestandNaam, "\")
        i = laatsteTeken + 1
    End If
Next

De foutmelding die ik krijg is de volgende:

Errornummer = 5 en de beschrijving = Ongeldige procedure-aanroep of ongeldig argument

Als ik deze regel:
Code:
If InStr(i, strBestandNaam, "\") > 0 Then

aanpas naar de deze regel ( i weggelaten in de Instr functie):
Code:
If InStr(strBestandNaam, "\") > 0 Then

dan krijg ik geen foutmelding.

Wat doe ik verkeerd?

Met deze code wil ik uit de string C:\Database\Database_BE.mdb alleen Database_BE.mdb halen. Is dit ook makkelijker te achterhalen via VBA code. Ik wil graag de naam van mijn backend achterhalen voor het maken van een backup.

Groeten,

Remco
 
Je kunt misschien beter de functie InstrRev gebruiken.
Vanuit de connectstring van een gekoppelde tabel kun je de mdb ook achterhalen

Public Function Ontdek()
Dim rs As DAO.TableDef
Dim db As DAO.Database
Dim strCon As String
Dim strPos As Integer
Set db = CurrentDb()
Set rs = db.TableDefs("Naamtable")
strCon = rs.Connect
strPos = InStrRev(strCon, "\")
MsgBox Mid(strCon, strPos + 1, Len(strCon) - strPos)
Set rs = Nothing
Set db = Nothing
End Function


GG
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan