Boa tarde pessoal,
Estou com um problema, em que o resultado da macro é um ao rodar pelo editor e outro ao rodar a partir de uma imagem (botão) com a macro atribuída a ele.
Rodando a partir do editor e da tecla de atalho (ctrl+n) ela retorna 4 linhas (resultado esperado), a partir do botão, só retorna 3 linhas.
Alguém já passou por esse problema? Como resolver?
Uso o Oficce 2013.
Seguem dados para verificação
Sub AtHist()
' Atualiza histórico do equipamento
Dim Eq As String
Dim LinM, LinF, LinH As Integer
Eq = Sheets("HistEquip").Range("B1").Value
LinH = 3
Sheets("HistEquip").Range("A3:I300").ClearContents
Sheets("Locação").Activate
LinF = 1 + Range("A2").Value
For LinM = 2 To LinF
If Cells(LinM, 2).Value = Eq Then
Sheets("HistEquip").Cells(LinH, 1) = Cells(LinM, 1).Value
Sheets("HistEquip").Cells(LinH, 2).Value = "Locação"
Range(Cells(LinM, 3), Cells(LinM, 9)).Copy
Sheets("HistEquip").Cells(LinH, 3).PasteSpecial Paste:=xlPasteValues, SkipBlanks:=True
LinH = LinH + 1
End If
Next
Range("A1").Select
Sheets("Manutenção").Activate
LinF = 1 - Range("A2").Value
For LinM = 2 To LinF
If Cells(LinM, 2).Value = Eq Then
Sheets("HistEquip").Cells(LinH, 1) = Cells(LinM, 1).Value
Sheets("HistEquip").Cells(LinH, 2).Value = "Manutenção"
Range(Cells(LinM, 3), Cells(LinM, 9)).Copy
Sheets("HistEquip").Cells(LinH, 3).PasteSpecial Paste:=xlPasteValues, SkipBlanks:=True
LinH = LinH + 1
End If
Next
Range("A1").Select
Sheets("HistEquip").Activate
Range("A1").Select
Application.CutCopyMode = False
End Sub
Print
https://www.dropbox.com/s/osenvae1b0eoo03/Print.jpg?dl=0
Exemplo
https://www.dropbox.com/s/virrlggmy5dqvi6/Controle.rar?dl=0
Grato desde já
Ramon Varela
Postado : 06/08/2017 2:58 pm