Prezados,
Estou com um problema com o código que estou desenvolvendo. Se alguém conseguir descobrir a falha poderia me ajudar please?
Este código está associado a um formulário onde o usuário escolhe quem aparecerá nas linhas (carreiras da organização) versus quem aparecerá nas colunas (características do funcionário). Ela vai bem até a passagem do primeiro If para o ElseIf. Simplesmente sai da execução .
Private Sub CommandButton1_Click()
Dim col01 As Range
Dim col02 As Range
Dim col031 As Range
Dim col032 As Range
Dim col033 As Range
Dim col034 As Range
Dim col04 As Range
Dim col051 As Range
Dim col052 As Range
Dim col053 As Range
Dim col054 As Range
Dim col06 As Range
Dim col07 As Range
Dim col08 As Range
Dim col09 As Range
Dim Rng As Range
Dim Intervalo As Range
Dim PrimeiraOcorrencia As String
Dim mVetor As Variant
Dim Contador As Long
Dim I As Long
Dim NovaPlanilha As Worksheet
If CheckBox6.Value = True Then
CheckBox7.Value = True
CheckBox8.Value = True
CheckBox9.Value = True
CheckBox10.Value = True
CheckBox11.Value = True
CheckBox12.Value = True
CheckBox13.Value = True
CheckBox14.Value = True
Else
If CheckBox7.Value = True Then
AFRE = "AFRE"
End If
If CheckBox7.Value = False Then AFRE = ""
If CheckBox8.Value = True Then GEFAZ = "GEFAZ"
If CheckBox8.Value = False Then GEFAZ = ""
If CheckBox9.Value = True Then TFAZ = "TFAZ"
If CheckBox9.Value = False Then TFAZ = ""
If CheckBox10.Value = True Then AFAZ = "AFAZ"
If CheckBox10.Value = False Then AFAZ = ""
If CheckBox11.Value = True Then AUSG = "AUSG"
If CheckBox11.Value = False Then AUSG = ""
If CheckBox12.Value = True Then OSO = "OSO"
If CheckBox12.Value = False Then OSO = ""
If CheckBox13.Value = True Then EPPGG = "EPPGG"
If CheckBox13.Value = False Then EPPGG = ""
If CheckBox14.Value = True Then OUTRAS = "OUTRAS"
If CheckBox14.Value = False Then OUTRAS = ""
End If
If Trim(AFRE) <> "" Then
mVetor = Array("AFRE")
Set NovaPlanilha = Worksheets.Add
Contador = NovaPlanilha.Range("A1048576").End(xlUp).Row
Sheets("REMUNERACAO BASICA").Select
With Worksheets("REMUNERACAO BASICA").Range("a1:C5000")
For I = LBound(mVetor) To UBound(mVetor)
Set Intervalo = .Find(What:=mVetor(I), _
After:=.Cells(.Cells.Count), _
LookAt:=xlPart, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False)
If Not Intervalo Is Nothing Then
PrimeiraOcorrencia = Intervalo.Address
Intervalo.Copy NovaPlanilha.Range("C" & Contador)
If CheckBox15.Value = True Then
'MASP
Set col01 = Intervalo.Offset(0, -2)
col01.Copy NovaPlanilha.Range("A" & Contador)
ElseIf CheckBox40.Value = True Then
'NOME
Set col02 = Intervalo.Offset(0, -1)
col02.Copy NovaPlanilha.Range("B" & Contador)
ElseIf CheckBox42.Value = True Then
'SÍMBOLO
Set col031 = Application.Worksheetfuntion.VLookup(col01, Worksheets("CARGOS DAD").Range("B2:C171"), 2, False)
col031.Copy NovaPlanilha.Range("C" & Contador)
Set col032 = Application.Worksheetfuntion.VLookup(col01, Worksheets("CARGOS FGD").Range("B2:C69"), 2, False)
col032.Copy NovaPlanilha.Range("D" & Contador)
Set col033 = Application.Worksheetfuntion.VLookup(col01, Worksheets("CARGOS GTED").Range("B2:C35"), 2, False)
col033.Copy NovaPlanilha.Range("E" & Contador)
Set col034 = Application.Worksheetfuntion.VLookup(col01, Worksheets("CARGOS 6762").Range("B2:E780"), 4, False)
col034.Copy NovaPlanilha.Range("F" & Contador)
ElseIf CheckBox18.Value = True Then
'EXERCÍCIO
Set col04 = Application.Worksheetfuntion.VLookup(col01, Worksheets("R:Arquivo ProcessosAtos-AtualOUTROSTRABALHO CCBASE DE DADOSRELATÓRIO CARGOS").Range("A1:AY4012"), 51, False)
col04.Copy NovaPlanilha.Range("G" & Contador)
ElseIf CheckBox48.Value = True Then
'VALOR CC
Set col051 = Application.Worksheetfuntion.VLookup(col01, Worksheets("CARGOS DAD").Range("B2:C171"), 13, False)
col051.Copy NovaPlanilha.Range("H" & Contador)
Set col052 = Application.Worksheetfuntion.VLookup(col01, Worksheets("CARGOS FGD").Range("B2:C69"), 13, False)
col052.Copy NovaPlanilha.Range("I" & Contador)
Set col053 = Application.Worksheetfuntion.VLookup(col01, Worksheets("CARGOS GTED").Range("B2:C35"), 12, False)
col053.Copy NovaPlanilha.Range("J" & Contador)
Set col054 = Application.Worksheetfuntion.VLookup(col01, Worksheets("CARGOS 6762").Range("B2:E780"), 12, False)
col054.Copy NovaPlanilha.Range("K" & Contador)
ElseIf CheckBox52.Value = True Then
'REMUNERACAO S/CC
Set col06 = Intervalo.Offset(0, 66)
col06.Copy NovaPlanilha.Range("L" & Contador)
ElseIf CheckBox56.Value = True Then
'REMUNERACAO C/CC
Set col07 = Application.Worksheetfuntion.VLookup(col01, Worksheets("REMUNERACAO COM CARGO").Range("A3:B9000"), 2, False)
col07.Copy NovaPlanilha.Range("M" & Contador)
ElseIf CheckBox21.Value = True Then
'DIFERENCA S/CC C/CC
Set col08 = col07.Value - col06.Value
col08.Copy NovaPlanilha.Range("N" & Contador)
ElseIf CheckBox45.Value = True Then
'% DIFERENCA SOBRE REMUNERACAO
Set col09 = (col08.Value / col06.Value) * 100
col09.Copy NovaPlanilha.Range("O" & Contador)
End If
Do
Contador = Contador + 1
Set Intervalo = .FindNext(Intervalo)
Loop While Not Intervalo Is Nothing And Intervalo.Address <> PrimeiraOcorrencia
End If
Next I
End With
End If
End Sub