在Excel中隐藏所有重复的列

如果行8中的文本相同,如何隐藏所有重复的列。

我有一个下降的材料。 具有相同编号的多个列用于BOM。 只想用macros显示第8行的唯一值,但也可以用另一个macros取消隐藏所有列。

我确定这很简单,但不知道从哪里开始。

谢谢

尝试这个:

Option Explicit Dim last_col, col, a As Integer Dim unique_materials(100), material As String Sub show_all_columns() last_col = Range("XFD8").End(xlToLeft).Column For col = 1 To last_col Columns(col).Hidden = False Next col End Sub Sub hide_duplicates() Erase unique_materials last_col = Range("A8").End(xlToRight).Column a = 0 For col = 1 To last_col material = Cells(8, col) If UBound(Filter(unique_materials, material)) > -1 Then Columns(col).Hidden = True Else unique_materials(a) = material a = a + 1 End If Next col End Sub