Esse primeiro método me da um ERRO 400
Worksheets("RELAT").Range(Cells(i, 3), Cells(i + 1, 12)).Value = Worksheets(mes).Range("P5:Y6").Value
Esse segundo método funciona normalmente
Worksheets("RELAT").Range("C7:L8").Value = Worksheets(mes).Range("P5:Y6").Value
O Primeiro e o segundo método não são as mesmas coisas ? Oque tem de errado ?
Código completo:
Sub atualizar_Relatorio()
Dim i As Integer
Dim j As Integer
Dim mes As String
j = 1
For i = 7 To 30 Step 2
mes = ActiveSheet.Cells(i, j).Value 'pegando o mês na planilha
MsgBox (mes & " " & i) 'testando o nome do mês na msgbox, código roda normalmente até aqui
Worksheets("RELAT").Range(Cells(i, 3), Cells(i + 1, 12)).Value = Worksheets(mes).Range("P5:Y6").Value 'este não funciona
Worksheets("RELAT").Range("C7:L8").Value = Worksheets(mes).Range("P5:Y6").Value 'este funciona
Next i
End Sub
Resumo do código:
Estou pegando um range (valores) de uma planilha (a qual pego o nome(mes) na planilha "RELAT" usando o for ) e estou copiando os valores desta em outra planilha usando a referência por células, para que eu possa fazer a alteração de linha na planilha "RELAT" para que os dados não sejam substituidos, porém o Excel me mostra um Erro 400
Substitui o for pelo seguinte código, porém queria reduzir usando o for
Código que estou usando e está funcionando:
Sub atualizar_Relatorio()
Worksheets("RELATÓRIO").Activate
Worksheets("RELAT").Range("C7:L8").Value = Worksheets("JANEIRO").Range("P5:Y6").Value
Worksheets("RELAT").Range("C9:L10").Value = Worksheets("FEVEREIRO").Range("P5:Y6").Value
Worksheets("RELAT").Range("C11:L12").Value = Worksheets("MARÇO").Range("P5:Y6").Value
Worksheets("RELAT").Range("C13:L14").Value = Worksheets("ABRIL").Range("P5:Y6").Value
Worksheets("RELAT").Range("C15:L16").Value = Worksheets("MAIO").Range("P5:Y6").Value
Worksheets("RELAT").Range("C17:L18").Value = Worksheets("JUNHO").Range("P5:Y6").Value
Worksheets("RELAT").Range("C19:L20").Value = Worksheets("JULHO").Range("P5:Y6").Value
Worksheets("RELAT").Range("C21:L22").Value = Worksheets("AGOSTO").Range("P5:Y6").Value
Worksheets("RELAT").Range("C23:L24").Value = Worksheets("SETEMBRO").Range("P5:Y6").Value
Worksheets("RELAT").Range("C25:L26").Value = Worksheets("OUTUBRO").Range("P5:Y6").Value
Worksheets("RELAT").Range("C27:L28").Value = Worksheets("NOVEMBRO").Range("P5:Y6").Value
Worksheets("RELAT").Range("C29:L30").Value = Worksheets("DEZEMBRO").Range("P5:Y6").Value
End Sub