Cleiton Dias Posted September 4, 2011 Report Share Posted September 4, 2011 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 SubSe 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? Quote Link to comment Share on other sites More sharing options...
0 Cleiton Dias Posted September 5, 2011 Author Report Share Posted September 5, 2011 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. Quote Link to comment Share on other sites More sharing options...
0 JoséA Posted September 5, 2011 Report Share Posted September 5, 2011 Porque na sua macro há uma instrução para selecionar uma área da Plan "Análise MOV"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. 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 Quote Link to comment Share on other sites More sharing options...
0 Cleiton Dias Posted September 5, 2011 Author Report Share Posted September 5, 2011 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! Quote Link to comment Share on other sites More sharing options...
0 JoséA Posted September 6, 2011 Report Share Posted September 6, 2011 Estando ao nosso alcance disponha. Quote Link to comment Share on other sites More sharing options...
Question
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?
Link to comment
Share on other sites
4 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.