Mens jeg lige tænker over dette? Kan du jo lige bruge lidt tid på at afslutte dine gamle spørgsmål. Du har 945 point ude, og gamle spørgsmål tilbage fra 2003 ?
Okay, så gamle spørgsmål kommer der vist ikke mere hjælp til, så der lægger du selv et 'svar' og lukker dem. Evt. oprette nyt spørgsmål vis det stadig er aktuelt.
Nå men, tilbage til betinget formatering, der er desværre kun mulighed for 3 regler? Du finden den i 'Formater'--> 'Betinget formatering' Betingelse 1 --> vælger du 'Formlen er' og i feltet til højre =1>A1 og så klikkes på 'Formater'--> fanebladet 'Mønster'--> vælg farve. Klik på 'Tilføj' osv....
Format penslen finder du som en knap øverst, ligner en malerpensel. Når du har formateret en celle, klikkes en gang på penslen, derefter klikkes på en celle som skal have samme format. (Et klik, og du kan formater en celle. Dobbeltklik, og du kan formatere flere celler, stop med klik på pensel igen)
Ud over at det skal være = er det ganske rigtig forstået. Men den pensle har godt nok lige løst alle mine problemer, du fortjener jo egentlig de point, så smid et svar.. :)
Private Sub Worksheet_Change(ByVal Target As Range) home = ActiveCell.Address 'Husker start celle Application.ScreenUpdating = False Range("A1:A100").Activate 'Celler der reageres på? For Each C In Selection.Cells 'hvis en celle i kolonne A = 1 farves kolonne B, i samme række If C.Value = 1 Then 'farv cellen i kolonne B med farve 0 C.Offset(0, 1).Interior.ColorIndex = 0 '= Tom 'hvis en celle i kolonne A = 2 farves kolonne B, i samme række ElseIf C.Value = 2 Then 'farv cellen i kolonne B med farve 2 C.Offset(0, 1).Interior.ColorIndex = 2 '= Hvid 'hvis en celle i kolonne A = 3 farves kolonne B, i samme række ElseIf C.Value = 3 Then 'farv cellen i kolonne B med farve 3 C.Offset(0, 1).Interior.ColorIndex = 3 '= Rød 'hvis en celle i kolonne A = 4 farves kolonne B, i samme række ElseIf C.Value = 4 Then 'farv cellen i kolonne B med farve 4 C.Offset(0, 1).Interior.ColorIndex = 4 '= KnaldGrøn 'hvis en celle i kolonne A = 5 farves kolonne B, i samme række ElseIf C.Value = 5 Then 'farv cellen i kolonne B med farve 5 C.Offset(0, 1).Interior.ColorIndex = 5 '= Blå 'hvis en celle i kolonne A = 6 farves kolonne B, i samme række ElseIf C.Value = 6 Then 'farv cellen i kolonne B med farve 6 C.Offset(0, 1).Interior.ColorIndex = 6 '= Gul 'hvis en celle i kolonne A = 7 farves kolonne B, i samme række ElseIf C.Value = 7 Then 'farv cellen i kolonne B med farve 7 C.Offset(0, 1).Interior.ColorIndex = 7 '= Pink 'hvis en celle i kolonne A er tom, vil cellerne i kolonne B i samme række, være uden farve. Else 'farv cellen i kolonne B med farve 0 C.Offset(0, 1).Interior.ColorIndex = 0 '= Tom End If Next Range(home).Select 'Aktivere start celle Application.ScreenUpdating = True End Sub 'Farvekoder til Interior.Colorindex '0 = Tom 1 = Sort '2 = Hvid 3 = Rød '4 = KnaldGrøn 5 = Blå '6 = Gul 7 = Pink '8 = Turkis 9 = Rødbrun '10 = Grøn 11 = Mørkeblå '12 = Olivengul 13 = Violet '14 = Blågrøn 15 = Grå 25% '16 = Grå 50% 17 = Støvet Blå '18 = Blomme 19 = Støvet Lys Gul '20 = Blegturkis 21 = Støvet Violet '22 = Støvet Lyserød
det behøves ikke nej, betinget formatering virker helt præcis som jeg vil have den til, var bare for dovn til at gøre det samme SÅ mange gange..
Men kan være du kender koden til en anden ting. når man tilføjer noget evt fra en inputbox, kunne det være super dejligt, den så selv kunne finde ud af, at der allerede stod noget i A1 og så hopper vider til A2 og indsætter det??
Kan oprette et nyt spørgsmål hvis du vil have flere point??
Dato: iResultat1 = InputBox("Indtast startdato:", "Start dato", Date) If iResultat1 = "" Then Exit Sub If Not IsDate(iResultat1) Or Len(iResultat1) < 10 Then MsgBox ("Forkert format eller ingen dato?"): GoTo Dato
Range("A1").Select If Range("A1").Value = "" Then Range("A1").Activate Else Range("A1").CurrentRegion.Select ActiveCell.Offset(Selection.Rows.Count, 0).Activate End If
With ActiveCell .Offset(0, 0).Value = iResultat1 End With
tror godt jeg kunne bruge lidt info om koden, når du lige ligger inde med 5 min til det. prøvet lige at ligge den i B rækken, det gik da galt for mig.. :)
Jamen det må jeg så prøve. Kopier koden over, så bliver forklaringen lysegrøn.
Er rettet til kolonne B
Sub gemIkolonneB() Dim iResultat1
Dato: 'Linie "navn" 'iResultat = dit svar? her en dato iResultat1 = InputBox("Indtast startdato:", "Start dato", Date) 'Hvis 'iResultat er tom, så forlades makrokroen. If iResultat1 = "" Then Exit Sub ' Hvis iResultat ikke er en dato eller indeholder 10 karaktere, ' kommer en besked med "Forkert format eller ingen dato?" ' og der gås tilbage til linien Dato, altså startes forfra. If Not IsDate(iResultat1) Or Len(iResultat1) < 10 Then MsgBox ("Forkert format eller ingen dato?"): GoTo Dato
'vælger celle B1 Range("B1").Select 'Hvis celle B1 er tom, aktiveres B1, 'Else' springes over If Range("B1").Value = "" Then Range("B1").Activate 'B1 er valgt og er ikke tom, området B1 og ned af til første tomme celle findes, 'og den første tomme celle aktiveres. Else Range("B1").CurrentRegion.Select ActiveCell.Offset(Selection.Rows.Count, 0).Activate End If
'I den aktive celler indsættes iResultat With ActiveCell .Offset(0, 0).Value = iResultat1 End With
Til inspiration. Opstarts spørgsmål? = MsgBox Indtast startdato: = IputBox Indtast initialer: = IputBox Gemmer alle 3 svar i ny række.
Sub gemIkolonneB()
Dim iSvar Dim iResultat1 Dim iResultat2
iSvar = MsgBox("Har du prøvet denne Makro før?", vbYesNoCancel, "Opstarts spørgsmål?") 'iSvar = Hvis Ja huskes teksten "Øvet" If iSvar = vbYes Then iSvar = "Øvet" 'iSvar = Hvis Nej huske teksten "Nybegynder" If iSvar = vbNo Then iSvar = "Nybegynder" 'Hvis Annuller" stoppes If iSvar = vbCancel Then Exit Sub
Dato: 'Linie "navn" 'iResultat1 = dit svar? her en dato iResultat1 = InputBox("Indtast startdato:", "Start dato", Date) 'Hvis 'iResultat1 er tom, så forlades makrokroen. If iResultat1 = "" Then Exit Sub ' Hvis iResultat1 ikke er en dato eller indeholder 10 karaktere, ' kommer en besked med "Forkert format eller ingen dato?" ' og der gås tilbage til linien Dato, altså startes forfra. If Not IsDate(iResultat1) Or Len(iResultat1) < 10 Then MsgBox ("Forkert format eller ingen dato?"): GoTo Dato
Ini: 'Linie "navn" 'iResultat2 = dit svar? her initialer iResultat2 = InputBox("Indtast initialer:", "Initialer") 'Hvis 'iResultat2 er tom, ' kommer en besked med "Du skal indtaste initialer?" ' og der gås tilbage til linien Ini, altså startes forfra. If iResultat2 = "" Then MsgBox ("Du skal indtaste initialer?"): GoTo Ini
'vælger celle B1 Range("B1").Select 'Hvis celle B1 er tom, aktiveres B1, 'Else' springes over If Range("B1").Value = "" Then Range("B1").Activate 'B1 er valgt og er ikke tom, området B1 og ned af til første tomme celle findes, 'og den første tomme celle aktiveres. Else Range("B1").CurrentRegion.Select ActiveCell.Offset(Selection.Rows.Count, 0).Activate End If
'I den aktive celler indsættes iResultat With ActiveCell .Offset(0, 0).Value = iSvar .Offset(0, 1).Value = iResultat1 .Offset(0, 2).Value = iResultat2 End With
hehe ja det så jeg, men har gennemskuet den, så tak for den.. :)
Synes godt om
Ny brugerNybegynder
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.