28. januar 2020 - 15:46 Der er 2 kommentarer og
1 løsning

VBA kode fejler pludselig

Jeg har et lille VBA skript som pludselig fejler (muligvis efter skifte til O065).Det går i sin enkelthed ud på at eksporterer nogle data til en CSV fil, som herefter kan importeres i Outlook. Det underlige er at der kun fejles på et felt - Email. Hvis jeg udelade feltet eller sætter et andet ind så virker det. Email feltet er defineret som short text 50 char.
VBA er:
Dim strSQL As String
    Dim rst As Recordset
    Dim strLines As String
    Dim fsoFile As Object
    Dim strPath As String
    Dim fld As DAO.Field
    Dim L As Integer
   
    Set fsoFile = CreateObject("Scripting.FileSystemObject")
    Dim objFile As Object
       
    strSQL = "SELECT * from Export_Mobil_Adresse_Detaljeret"
       
    Set rst = CurrentDb.OpenRecordset(strSQL)
    L = 0
    strLines = ""
    For Each fld In rst.Fields
        If fld.Name <> "" Then
            If L = 0 Then
            strLines = fld.Name
            L = L + 1
            Else
            strLines = strLines & "," & fld.Name
           
            End If
        End If
    Next
    strLines = strLines & vbCrLf
 
    Do While Not rst.EOF
        strLines = strLines & rst.Fields("Department") & ","
        strLines = strLines & rst.Fields("Company") & ","
        strLines = strLines & rst.Fields("Business Street") & ","
        strLines = strLines & rst.Fields("Business Street2") & ","
        strLines = strLines & rst.Fields("Business Postal Code") & ","
        strLines = strLines & rst.Fields("Business City") & ","
        strLines = strLines & rst.Fields("Company Main Phone") & ","
        strLines = strLines & rst.Fields("Name") & ","
        strLines = strLines & rst.Fields("Job Title") & ","
        strLines = strLines & rst.Fields("E-mail") & ","
        strLines = strLines & rst.Fields("Company") & ","
        strLines = strLines & rst.Fields("Mobile Phone") & ","
        strLines = strLines & rst.Fields("Business Phone") & vbCrLf
       
    rst.MoveNext
Loop

strPath = CurrentProject.path & "\Export_Mobil_Adresse_Detaljeret.csv"

Set objFile = fsoFile.CreateTextFile(strPath)

objFile.WriteLine strLines
objFile.Close

Set fsoFile = Nothing
Set objFile = Nothing

Set rst = Nothing

MsgBox " Alle data er nu eksporteret"
*****
Jeg får en Run-time error 5, Invalid procedure call or argument.
på linien: objFile.WriteLine strLines
Avatar billede terry Ekspert
28. januar 2020 - 16:22 #1
try compiling the database to see if you have other errors.
Debug+Compile in code view.
Also check there are no broken references.
Tools+References in code view
29. januar 2020 - 08:29 #2
Jeg kan compile databasen og der mangler ikke nogle referancer, så det var ikke der problemet var :-)
Avatar billede fdata Forsker
29. januar 2020 - 10:16 #3
Tjek email adresserne. Det lugter af at der er én, der "ødelægger" strLines (der kan have sneget sig en apostrof el.lign. ind)
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
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

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



IT-JOB

Netcompany A/S

Software Developer

Danske Spil A/S

Senior IT-projektleder

Netcompany A/S

Test Specialist

Danske Commodities A/S

Senior Software Developer & Tech Lead

Acrelec Danmark

IT-supporter