- 01 Jun 2016 às 09:33
#11244
Bom dia a todos
Agradeço se alguem puder me ajudar com este assunto.
Estou desenvolvendo uma macro que irá adicionar a fórmula VLookup em uma Workbook adicionada e, para isso, declarei a Workbook atual e a nova Workbook. Quando vou utilizar o comando "ActiveCell.FormulaR1C1 =" se eu utilizar o comando utilizando o nome da planilha "=VLOOKUP(RC[-1],'[Macro_Teste.xlsm]DB'!R5C1:R" & LRWBP & "C19,2,0)" funciona normalmente, mas quando tento utlizar Worbook como declarada apresenta erro de depuração. "=VLOOKUP(RC[-5]," & WBPSheet & "!R5C1:R" & LRWBP & "C19,2,0)"
Abaixo segue o código que desenvolvi até o momento....
Option Explicit
Sub Teste()
Dim LRWBS As Integer
Dim LRWBP As Integer
Dim i As Integer
Dim WBP As Workbook
Dim WBS As New Workbook
Dim WBPSheet As Worksheet
Set WBP = ActiveWorkbook
Set WBPSheet = WBP.Sheets("DB")
LRWBP = Cells(Rows.Count, 1).End(xlUp).Row
Set WBS = Workbooks.Add
WBS.Sheets(1).Select
LRWBS = 25
For i = 1 To LRWBS
Range("A" & i).Select
Selection = "Cliente" & i
Next i
Range("B1").Select
'***********************************************************************************************
'Abaixo as duas formas, a primeira linha funciona normalmente, mas não utilizando a WB declarada
'e sim o nome da planilha
'Já a segunda, através da Workbook declarada, não encontrei a foma correta de utilizar a fórmula
'Peço ajuda para escrever esta fórmula
'***********************************************************************************************
ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-1],'[Macro_Teste.xlsm]DB'!R5C1:R" & LRWBP & "C19,2,0)" 'Funciona normalmente
ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-1]," & WBPSheet & "!R5C1:R" & LRWBP & "C19,2,0)" 'Apresenta erro de depuração
'************************************************************************************************
Range("B1:B" & LRWBS).Select
Selection.FillDown
End Sub
Desde já agradeço a atenção
JC Neto
Agradeço se alguem puder me ajudar com este assunto.
Estou desenvolvendo uma macro que irá adicionar a fórmula VLookup em uma Workbook adicionada e, para isso, declarei a Workbook atual e a nova Workbook. Quando vou utilizar o comando "ActiveCell.FormulaR1C1 =" se eu utilizar o comando utilizando o nome da planilha "=VLOOKUP(RC[-1],'[Macro_Teste.xlsm]DB'!R5C1:R" & LRWBP & "C19,2,0)" funciona normalmente, mas quando tento utlizar Worbook como declarada apresenta erro de depuração. "=VLOOKUP(RC[-5]," & WBPSheet & "!R5C1:R" & LRWBP & "C19,2,0)"
Abaixo segue o código que desenvolvi até o momento....
Option Explicit
Sub Teste()
Dim LRWBS As Integer
Dim LRWBP As Integer
Dim i As Integer
Dim WBP As Workbook
Dim WBS As New Workbook
Dim WBPSheet As Worksheet
Set WBP = ActiveWorkbook
Set WBPSheet = WBP.Sheets("DB")
LRWBP = Cells(Rows.Count, 1).End(xlUp).Row
Set WBS = Workbooks.Add
WBS.Sheets(1).Select
LRWBS = 25
For i = 1 To LRWBS
Range("A" & i).Select
Selection = "Cliente" & i
Next i
Range("B1").Select
'***********************************************************************************************
'Abaixo as duas formas, a primeira linha funciona normalmente, mas não utilizando a WB declarada
'e sim o nome da planilha
'Já a segunda, através da Workbook declarada, não encontrei a foma correta de utilizar a fórmula
'Peço ajuda para escrever esta fórmula
'***********************************************************************************************
ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-1],'[Macro_Teste.xlsm]DB'!R5C1:R" & LRWBP & "C19,2,0)" 'Funciona normalmente
ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-1]," & WBPSheet & "!R5C1:R" & LRWBP & "C19,2,0)" 'Apresenta erro de depuração
'************************************************************************************************
Range("B1:B" & LRWBS).Select
Selection.FillDown
End Sub
Desde já agradeço a atenção
JC Neto