Ir ao conteúdo
  • Cadastre-se

Erro "O método Select da classe Range falhou"


Marco Andrade

Posts recomendados

Pessoal, tudo bem!?

Acredito estar errando algo muito simples, mas realmente travei! Preciso de ajuda....

No passado desenvolvi um FOR...NEXT que rodava tranquilamente a partir de um formulário (frm), até que necessitei incluir em uma das planilhas fonte para o for...next uma outra macro (private a esta wsheet) bem simples que simula um 'atingir meta'.

O problema:

O For...Next é interrompido com um erro de tempo de execução '1004' informando que "O método Select da classe Range falhou" e retorna o código da Private Sub quando depurado.

Me ajudem a resolver estes códigos, de maneira que eu consiga rodar o for...next e tambem a private sub sem que haja tal travamento.

Abaixo o For...Next e a Private Sub:

For..Next que esta em um frm (formulário):

Private Sub OptionButton1_Click()

Dim Msg, Style, Title, MyString

Msg = "O processamento levará alguns minutos, deseja continuar?"

Style = vbYesNo + vbExclamation + vbDefaultButton1

Title = "Gerar tabela"

Response = MsgBox(Msg, Style, Title)

If Response = vbYes Then

MyString = "Sim"

Dim wkOrigemDestino As Worksheet

Dim wkDestinoOrigem As Worksheet

Set wkOrigemDestino = Sheets("LISTA_PR_VENDA_GERAL")

Set wkDestinoOrigem = Sheets("CALC_PR_VENDA")

Dim L As Integer, C As Integer

For L = 5 To 199

For C = Columns("g").Column To Columns("AD").Column

With wkOrigemDestino

wkDestinoOrigem.Range("c3") = "GER"

'Set F = .Range("e" & L)

' If F = 0 Then

' MsgBox "Processo concluído!!!"

' Exit For

' End If

'wkDestinoOrigem.Range("c4") = F

wkDestinoOrigem.Range("c4") = .Range("e" & L)

wkDestinoOrigem.Range("c5") = .Cells(3, C)

wkDestinoOrigem.Range("c7") = .Cells(4, C)

End With

wkOrigemDestino.Cells(L, C) = wkDestinoOrigem.Range("d25")

Next

Next

Sheets("LISTA_PR_VENDA_GERAL").Select

Range("b3").Select

Else

MyString = "Não"

Sheets("LISTA_PR_VENDA_GERAL").Select

Range("b2").Select

End If

Unload frmGerarTabelas

End Sub

Private Sub que esta numa planilha e é uma das Wksheets do 4next:

Private Sub Worksheet_Change(ByVal Target As Range)

Range("f6").Select

Application.CutCopyMode = False

Range("f25").GoalSeek Goal:=ActiveCell, ChangingCell:=Range("f17")

Range("f6").Select

End Sub

Aguardo um socorro!!!!!

Valeu,

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!