27. september 2008 - 10:36Der er
13 kommentarer og 1 løsning
fejlfanger i makro
jeg har en kode som henter data fra en fil til en anden. Den henter data fra navngivne områder. Jeg har lavet en ON ERROR RESUME NEXT, så jeg er sikker på at den altid køres igennem uanset om områderne findes eller ej.
Kan man lave en slags fejlfanger der fortæller om der har været fejl og evt. hvilke. enten ved en msg box samt evt indsætter fejlene i et område i ark2 fra a10 og ned, så man altid kan se hvilke fejl der har været.
Min kode er længere men jeg har kortet den ned for overskuelighedens skyld.
Jeg beklager igen den fettede poiontgivning, men det er hvad derer tilbage på kontoen :-)
Sub importOplysniger()
Dim fn As Variant ChDrive "c" ChDir "c:\dokumenter" fn = Application.GetOpenFilename("Alle filer,*.*", 1, "Vælg fil", , False) If TypeName(fn) = "Boolean" Then Exit Sub Debug.Print "Selected file: " & fn If MsgBox("Du har valgt at importere data fra filen:" & vbLf & vbLf & fn & vbLf & vbLf & "Er du sikker på at du vil fortsætte?", vbOKCancel, "Advarsel!" = vbOKCancel + vbDefaultButton1) Then Exit Sub
On Error Resume Next Dim wb As Workbook Set wb = Workbooks.Open(fn, True, True) With ThisWorkbook.Worksheets("ark1") ' Regnskabsår sidste år .Range("startdag").Formula = wb.Worksheets("ark1").Range("sidste_år_startdag").Formula .Range("startmd").Formula = wb.Worksheets("ak1").Range("sidste_år_startmd").Formula .Range("startår").Formula = wb.Worksheets("ak1").Range("sidste_år_startår").Formula .Range("slutdag").Formula = wb.Worksheets("ark1").Range("sidste_år_slutdag").Formula .Range("slutmd").Formula = wb.Worksheets("ark1").Range("sidste_år_slutmd").Formula .Range("slutår").Formula = wb.Worksheets("ark1").Range("sidste_år_slutår").Formula End With End Sub
Hos Computerworld it-jobbank er vi stolte af at fortsætte det gode partnerskab med folkene bag IT-DAY – efter vores mening Danmarks bedste karrieremesse for unge og erfarne it-kandidater.
den skriver fejlen fra den fil jeg forsøger at importere fra, men det jeg havde i tankerne er at den skal afsløre hvis der er problemer med de enkelte områder, som jeg importerer: startdag startmd startår o.s.v.
Jeg vil gerne se præcis hvilke områder der evt. driller.
ja, den tester godt nok for navne, men da min importfil er meget lang og der er en del navngivne områder ud over de områder der skal importeres, virker det ikke helt for mig.
Det kan være at man er nødt til at lave en positiv-liste over de områdr der skal testes
startdag startmd startår o.s.v.
både en til aktuel workbook og en til den udpegede workbook.
ja, det var lige sådan noget jeg ledte efter. Der er kun en lille detajle tilbage.
Den laver et mellemreum for alle de felter der er ok. Hvis der er et felt med fejl og derefter 7 felter der ok, for derefter er et felt der er fejl i, så kommer der 7 mellemrum i msgboxen.
Kan man få dem til at stå med et komma imellem og uden de ekstra mellemrum? Jeg har forsøgt at indsætte kommaer i koden, men så kommer der til at stå , , , ,
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.