如果第8行中的文字相同,我该如何隐藏所有重复的列。
我有一些材料。具有相同编号的多个列用于BOM。想要显示第8行中带有宏的唯一值,但也要使用另一个宏取消隐藏所有列。
我确定这很简单,但不知道从哪里开始。
由于
答案 0 :(得分:1)
试试这个:
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