Скрыть несколько строк в разных схемах

# assuming list is sorted:
pattern = ["ABCDE",
"ABCDEFG",
"ABCDEFGH",
"ABCDEFGHIJKLMNO",
"CEST",
"DBTSFDE",
"DBTSFDEO",
"EOEUDNBNUW",
"EAEUDNBNUW",
"FG",
"FGH"]

pattern = list(reversed(pattern))

def iterate_patterns():
    while pattern:
        i = pattern.pop()
        throw_it_away = False
        for p in pattern:
            if p.startswith(i):
                throw_it_away = True
                break
        if throw_it_away == False:
            yield i

print(list(iterate_patterns()))

Выход:

['ABCDEFGHIJKLMNO', 'CEST', 'DBTSFDEO', 'EOEUDNBNUW', 'EAEUDNBNUW', 'FGH']

0
задан GSD 19 January 2019 в 14:25
поделиться

1 ответ

Если это единственные рабочие листы в вашей рабочей тетради, добавьте Dim w as Worksheet вверху вашего подпункта и измените

    If Worksheets("Datasheet").Cells(x, Z) = "" Or Worksheets("Datasheet").Cells(x, Z) = "Empty" Then
        FinalCell = x & ":" & x
        Rows(FinalCell).Hidden = True      'Deletes the row
    End If

на

    If Worksheets("Datasheet").Cells(x, Z) = "" Or Worksheets("Datasheet").Cells(x, Z) = "Empty" Then
        FinalCell = x & ":" & x
        For Each w In ThisWorkbook.Worksheets
            w.Rows(FinalCell).Hidden = True
        Next w
    End If

, если они не являются только рабочие листы в вашей рабочей тетради

    If Worksheets("Datasheet").Cells(x, Z) = "" Or Worksheets("Datasheet").Cells(x, Z) = "Empty" Then
        FinalCell = x & ":" & x
        Worksheets("DataSheet").Rows(FinalCell).Hidden = True
        Worksheets("YourSheet1").Rows(FinalCell).Hidden = True
        Worksheets("YourSheet2").Rows(FinalCell).Hidden = True
        Worksheets("YourSheet3").Rows(FinalCell).Hidden = True
    End If
0
ответ дан Tate Garringer 19 January 2019 в 14:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: