Avatar billede Butterfly Ekspert
12. august 2014 - 08:10 Der er 9 kommentarer og
1 løsning

Skjule en række ud fra cellefarve

Er det muligt at skjule en række ud fra en bestemt farve?
Det virker fint, hvis det er et tal, men hvordan skal det se ud, hvis det skal være i forhold til en bestemt farve?
Jeg vil gerne have skiftet ">= 1 Then" ud med "Color = 16767341"
 
With ActiveSheet
.Rows("3:100").Hidden = False
For lRow = .UsedRange.SpecialCells(xlCellTypeLastCell).Row To 1 Step -1
If .Cells(lRow, 8) >= 1 Then
.Cells(lRow, 8).EntireRow.Hidden = True
End If
Next
End With

Tak
Avatar billede supertekst Ekspert
12. august 2014 - 09:19 #1
Sub test()
    With ActiveSheet
    .Rows("3:100").Hidden = False
    For lRow = .UsedRange.SpecialCells(xlCellTypeLastCell).Row To 1 Step -1
    If .Cells(lRow, 8).Interior.Color = 16767341 Then
    .Cells(lRow, 8).EntireRow.Hidden = True
    End If
    Next
    End With
End Sub
Avatar billede Butterfly Ekspert
12. august 2014 - 10:13 #2
Det virker perfekt - tak for det. Men jeg troede at jeg kunne bruge det sammen med en betinget formatering der farvelægger cellerne, hvis forskellige betingelser er opfyldt.
Så nu mangler jeg noget vba der kan farvelægge en celle hvis disse betingelser er opfyldt.
Hvis K2 = M2 så skal cellen farves
Avatar billede supertekst Ekspert
12. august 2014 - 10:25 #3
Det er vel blot:

If Range("K2") = range("M2") Then
  .Cells(lRow, 8).Interior.Color = 16767341
End if
Avatar billede Butterfly Ekspert
12. august 2014 - 10:51 #4
Jeg får en fejl ved .Cells, makroen går i stå
Avatar billede supertekst Ekspert
12. august 2014 - 11:05 #5
Du bliver nok nødt til at vise hele den relevante kode
Avatar billede Butterfly Ekspert
12. august 2014 - 11:38 #6
Jeg har jo bare sat det ind sådan

        If Range("K2") = Range("M2") Then
  .Cells(lRow, 8).Interior.Color = 16767341
End If

       
  With ActiveSheet
    .Rows("3:100").Hidden = False
    For lRow = .UsedRange.SpecialCells(xlCellTypeLastCell).Row To 1 Step -1
    If .Cells(lRow, 8).Interior.Color = 16767341 Then
    .Cells(lRow, 8).EntireRow.Hidden = True
    End If
    Next
    End With

Vil det så også virke for k3=m3, osv.?
Avatar billede supertekst Ekspert
12. august 2014 - 11:49 #7
With og .Cells hører sammen - ovenfor er With ActiveSheet under .Cells
. er udtryk for det du skriver efter With


Sub test()
    With ActiveSheet
        .Rows("3:100").Hidden = False
        For lRow = .UsedRange.SpecialCells(xlCellTypeLastCell).Row To 1 Step -1
          If Range("K2") = Range("M2") Then
              .Cells(lRow, 8).Interior.Color = 16767341
          End If
            If .Cells(lRow, 8).Interior.Color = 16767341 Then
                .Cells(lRow, 8).EntireRow.Hidden = True
            End If
        Next
    End With
End Sub
Avatar billede Butterfly Ekspert
12. august 2014 - 15:49 #8
Jeg kan ikke få det til at virke, den farvelægger og skjuler alle linjer, hvor der er et tal i enten k eller m,
Avatar billede Butterfly Ekspert
09. september 2014 - 08:41 #9
Virker hvis jeg vælger farve 1-8 :-)
Tak for hjælpen
Avatar billede supertekst Ekspert
09. september 2014 - 08:55 #10
Fint og selv tak
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

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