Avatar billede bps Praktikant
21. oktober 2021 - 14:41 Der er 1 kommentar

Skjul tomme rækker VBA

Hej
Jeg har dette script som jeg gerne vil have til at virke på rækker i stedet for kolonner - den skjuler nu tomme kolonner, men jeg vil gerne have skrevet den om til rækker i stedet for - jeg synes ikke, at kunne få det til at virke - nogen der kan hjælpe?

Sub SkjulTommeKolonner()
'Gennemløber de første 26 kolonner og skjuler dem,
'hvis de er tomme. Bruges til eksemplet på fanebladet
'Skjul-tomme-kolonner.
Dim rCell As Range
Dim rTest As Range
Dim lCol As Long

On Error GoTo Fejl

'Skærmopdatering slås fra for at øge hastigheden
Application.ScreenUpdating = False

For lCol = 0 To 25 Step 1
    'rCell sættes = cellen lCol til højre
    'for celle A1.
    Set rCell = Range("A1").Offset(0, lCol)
    'Hvis cellen er tom
    If Len(rCell.Value) = 0 Then
        'Gå til første celle nedefter, som har
        'et indhold. Hvis der ikke er nogen
        '"på vejen," havner vi i den nederste celle.
        Set rTest = rCell.End(xlDown)
        If rTest.Row = Rows.Count And Len(rTest.Value) = 0 Then
            Columns(rCell.Column).Hidden = True
        End If
    End If
Next

BeforeExit:
Set rCell = Nothing
Set rTest = Nothing
'Skærmopdatering slås til igen
Application.ScreenUpdating = True

Exit Sub
Fejl:
MsgBox Err.Description & " Procedure SkjulTommeKolonner"
Resume BeforeExit
End Sub
Avatar billede Docthomassen Juniormester
21. oktober 2021 - 16:35 #1
Prøv at erstatte for-next løkken med dette.
Jeg kan ikke selv teste det herfra.

For lCol = 0 To 25 Step 1
    'rCell sættes = cellen lCol til højre (nedenfor)
    'for celle A1.
    Set rCell = Range("A1").Offset(lCol,0)
    'Hvis cellen er tom
    If Len(rCell.Value) = 0 Then
        'Gå til første celle nedefter (til højre), som har
        'et indhold. Hvis der ikke er nogen
        '"på vejen," havner vi i den nederste celle.
        Set rTest = rCell.End(xltoRight)
        If rTest.Column = column.Count And Len(rTest.Value) = 0 Then
            rows(rCell.row).Hidden = True
        End If
    End If
Next
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