14. januar 2003 - 11:13Der er
5 kommentarer og 1 løsning
Udskrive felter med bestemt værdi
Jeg har lavet et regneark med arbejdstidsplanlægning. Cellerne kan antage en masse forskellige værdier bl.a. "vt". Jeg kunne tænke mig en makro der udskriver hele planlægningen, men det er kun de celler hvor der står "vt" der skal være udflydt resten skal være tomme på udskriften. Håber beskrivelsen er til at forstå.
Hvis du vil have de resterende linier udskrevet som blanke felter, mener jeg ikke, du behøver at konstruere en makro for at løse opgaven. Du kan eventuelt vælge at lave det vha betinget formatering. Her kan du definere én betingelse for at udskrive alle cellerne, og en anden betingelse, der blanker de celler, der ikke svarer til dit kriterium.
Er der nogen struktur i den måde cellerne, der skal udskrives er placeret på, i forhold til de, der ikke skal udskrives, eller er de tilfældigt spredt over regnearket?
Når du siger at kun celler med vt skal udskrives. hvad så med ledetekster osv?
felterne med vt er tilfældigt placeret ud over regnearket. Jo du har ret jkrons ude til venstre er der en kolonne med navne som også skal med på udskriften. Jeg har selv set det der autofilter, og havde forestillet mig at man kunne bruge det på det område der indeholder T, MF, VT o.s.v. Men hvordan man lige angiver det i sådan en makro, det er spørgsmålet.
Sub Find() Worksheets("Ark1").Activate v = InputBox(" indtast søgeværdi", "overfør til nyt ark") C = 1 ' start rækken R = 2 ' start kolonnen SC = 100 'Slut rækken SR = 10 ' Slut kolonnen For R = 2 To SR ' antal kolonner der skal gennemsøge For C = 1 To SC ' her kan du fange værdien i cellen If Cells(C, R) = v Then Worksheets("Ark2").Activate A = 1 ' Kolonne i resultatarket Do Until Worksheets("Ark2").Cells(A, 1) = "" _ Or Worksheets("Ark2").Cells(A, 1) = Worksheets("Ark1").Cells(C, 1).Value A = A + 1 Loop If Worksheets("Ark2").Cells(A, 1) = "" Then Worksheets("Ark2").Cells(A, 1).Value = Worksheets("Ark1").Cells(C, 1).Value End If Worksheets("Ark2").Cells(A, R).Value = Worksheets("Ark1").Cells(C, R).Value Worksheets("Ark1").Activate Else ' gør noget andet End If Next C Next R End Sub
Denne makro overfører alle fundne til et nyt ark og tager altid kolonne A med, hvis der er fundne værdier i rækken. du kan selv justerer antal række og kolonner den skal kikke på. Ret også arknavnene til dit behov.
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.