-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcleanColumns.bas
More file actions
49 lines (40 loc) · 1.41 KB
/
cleanColumns.bas
File metadata and controls
49 lines (40 loc) · 1.41 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
Option Explicit
Sub cleanColumns()
'Remove as colunas indesejadas com base no cabeçalho
Dim cColumns As Long
Dim checkArr As Long
Dim qtdCheckArr As Long
Dim qtdColumns As Long
Dim sheet As String
Dim saveColumn As String
Dim nameColumn(1 To 5) As String
'Insira a "aba" desejada.
'Insira a quantidade de colunas a ser analisada
'Insira a quantidade de colunas que VÃO FICAR dentro do array.
'Insira os nomes das colunas que VÃO ficar.
'--Inputs
sheet = "Planilha1"
qtdColumns = 10
qtdCheckArr = 5
'--Inputs nome das colunas.
nameColumn(1) = "INDENIZ"
nameColumn(2) = "NF"
nameColumn(3) = "VAL_NF"
nameColumn(4) = "DESCR_EMPRESA"
nameColumn(5) = "MODAL"
For cColumns = 1 To qtdColumns
For checkArr = 1 To qtdCheckArr
If Worksheets(sheet).Cells(1, cColumns).Value = nameColumn(checkArr) Then
saveColumn = nameColumn(checkArr)
End If
Next checkArr
If Worksheets(sheet).Cells(1, cColumns).Value <> saveColumn Then
Worksheets(sheet).Columns(cColumns).ClearContents
End If
Next cColumns
For cColumns = qtdColumns To 1 Step -1
If Worksheets(sheet).Cells(1, cColumns).Value = "" Then
Columns(cColumns).Delete
End If
Next cColumns
End Sub