Ajuda - Busca - Membros - Calendário
Versão Completa: Macro Funciona em uma planilha, mas nas outras não.
Fórum Script Brasil > Programação & Desenvolvimento > Visual Basic > VBA
Cleiton Dias
Olá

Tenho a seguinte macro:

Sub InsereLinha()
Dim i As Long
For i = 50007 To 1 Step -1
If Sheets("Análise MOV").Cells(i, "C") = Sheets("Config").Cells(3, "I") Then
Sheets("Análise MOV").Cells(i, "C").Select
Selection.EntireRow.Insert
Sheets("Config").Cells(3, "I").Copy
Selection.PasteSpecial Paste:=xlPasteValues
Sheets("Config").Cells(3, "J").Copy
ActiveCell.Offset(0, 1).PasteSpecial Paste:=xlPasteValues
Exit Sub
End If
Next i

End Sub

Se eu atribuo esta macro a um botão na planilha "Análise MOV", a Macro funciona perfeitamente.
Agora se eu atribuo a mesma macro a um botão na planilha "Config", a Macro não funciona. Dá erro na linha " Sheets("Análise MOV").Cells(i, "C").Select".

O q eu estou fazendo de errado?
Cleiton Dias
O Excel dá a msg:
"O método Select da classe Range falhou". O Erro ocorre na linha " Sheets("Análise MOV").Cells(i, "C").Select".

Mas se eu executo a macro na planilha "Análise MOV" ela funciona.
JoséA
Porque na sua macro há uma instrução para selecionar uma área da Plan "Análise MOV"

CODE
Sheets("Análise MOV").Cells(i, "C").Select


Para resolver o caso insira que ative a Plan "Análise MOV" e depois retorne para Plan desejada.


CODE
Sub InsereLinha()
Dim i As Long
For i = 50007 To 1 Step -1
If Sheets("Análise MOV").Cells(i, "C") = Sheets("Config").Cells(3, "I") Then
Sheets("Análise MOV").Select
Sheets("Análise MOV").Cells(i, "C").Select
Selection.EntireRow.Insert
Sheets("Config").Cells(3, "I").Copy
Selection.PasteSpecial Paste:=xlPasteValues
Sheets("Config").Cells(3, "J").Copy
ActiveCell.Offset(0, 1).PasteSpecial Paste:=xlPasteValues
Sheets("Config").Select
Exit Sub
End If
Next i
End Sub

Cleiton Dias
Olá José!

Muito obrigado! Resolveu o problema aki!!

Quanto a linha Sheets("Análise MOV").Cells(i, "C").Select, eu não sei porque tem ela não. rsrsrs!! Na verdade eu achei esta macro na internet, e adaptei a minha tabela.

Agora está td OK!!
Muito Obrigado!
JoséA
Estando ao nosso alcance disponha.
Esta é uma versão simplificada de nosso conteúdo principal. Para ver a versão completa com maiores informações, formatação e imagens, por favor clique aqui.
Invision Power Board © 2001-2013 Invision Power Services, Inc.