17. marts 2007 - 20:21Der er
8 kommentarer og 1 løsning
Lav en oversigt over fejl ved hjælp af vba
Jeg har et regneark, hvor der er en fejlliste over de fejl vi har lavet en dag. Den går udefra et afkast fx 610 og tidspunkt, hvorpå en person har haft afkast 610. Jeg vil gerne have lavet en oversigt over hvilke fejl i en person har lavet over en måned udefra afkast og personen som laver fejlen fx hvis Allan laver en fejl i afkast 610 bliver der i regnearket sat et 1 tal udefra afkast 610 og personen Allan og hvis han laver den sammen fejl igen kommer der til at stå 2. Jeg ved ikke om det kan lade sig gøre. Jeg håber en eller anden kan hjælpe mig.
Nej, jeg laver en opstilling med personens navn og afkast, da den jeg skal bruge er hvormange fejl de forskellige lavet i et afkast pr måned, således man måske kan gøre et eller andet for at formindske fejlene i et afkast. Datoen for fejlen har ingen betyde i den situation.
I ark1 har jeg fejllisten som bliver udskifte hver dag og hvor alle oplysninger ligger. Fejllisten består af en kolonne med afkast, dato/klokkeslæt, navnet på personen som har lavet fejl. I ark2 vil jeg gerne have lavet en opsummering af oplysninger fra ark1, således jeg kan se, hvor mange fejl de forskellige laver i forskellige afkast i løbende af en måned basis af oplysningerne fra ark1.
Ja - det ligner noget, som jeg har haft fat i tidligere. Forslag: Oprette en særlig xls.fil (FejlStatisik) pr. år. - Et ark pr.måned, hvor optællingen foretages pr. afkast - pr. person
P.t. På ark2 i Fejlliste5: (kan evt. ændres til separat fil) I række1 A.......B......C Medarb. 601 ...602 osv (afkastnr i hver sin celle)
Følgende kode i Ark2: Sub opbygFejlStatistik() hentFejl End Sub Private Sub hentFejl() Dim antaRæk, afkast, medarbejder ActiveWorkbook.Sheets(1).Activate With ActiveWorkbook.Sheets(1) antalRæk = ActiveCell.SpecialCells(xlLastCell).Row
For ræk = 2 To antalRæk afkast = .Cells(ræk, 2) medarbejder = .Cells(ræk, 7)
If medarbejder <> "" Then opdaterfejl afkast, medarbejder End If Next ræk End With
ActiveWorkbook.Sheets(2).Activate MsgBox ("Optælling af fejl afsluttet") End Sub Private Sub opdaterfejl(afk, medarb) Dim mRæk mRæk = findMedarbejder(medarb) optælFejl mRæk, afk End Sub Private Function findMedarbejder(medarb) Dim ræk ræk = 2 While Cells(ræk, 1) <> "" If Cells(ræk, 1) = medarb Then findMedarbejder = ræk Exit Function End If ræk = ræk + 1 Wend
Cells(ræk, 1) = medarb findMedarbejder = ræk End Function Private Sub optælFejl(ræk, fejl) Dim kol kol = (fejl - 601) + 2 Cells(ræk, kol) = Cells(ræk, kol) + 1 End Sub
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.