Bom dia galera,
explicação rápida: problema no código para visualizar planilha externa e trazer dados para o "BD" . segue anexo para ilustrar melhor.
explicando melhor:
Imaginemos que na aba "BD" é um arquivo pasta de trabalho onde só existe aquela aba( e é nessa pasta de trabalho que estou desenvolvendo o codigo no meu arquivo original) e as outras abas "planilha externa vendas" e "planilha externa produção" pertence ao mesmo arquivo externo(pasta de trabalho).
eu preciso comparar 3 coisas e partir dai, copiar a celula correspondente (como se fosse matriz).
por exemplo: SE a coluna B do "BD" = Coluna A da planilha externa.aba vendas E se a coluna E do "BD" = Coluna B da planilha externa.aba bendas e se a coluna J na linha 2 dO "BD" = Coluna C na linha 1 da planilha externa então
ele deve copiar esse valor que corresponde essas condições para o local do banco de dados "BD" que também corresponde a essas condições.
Sub Sample()
Dim wb1 As Workbook, wb2 As Workbook
Dim ws1 As Worksheet, ws2 As Worksheet
Dim ws1LRow As Long, ws2LRow As Long
Dim i As Long, j As Long
Dim ws1LCol As Long, ws2LCol As Long
Dim W As Long
Set wb1 = Workbooks.Open("M:xxx.xlsx") 'apontar o caminho onde o arquivo externo está salvo
Set ws1 = wb1.Sheets("VENDAS")
'~~> Get the last Row and Last Column
With ws1
ws1LRow = .Range("A" & .Rows.Count).End(xlUp).Row
ws1LCol = .Cells(1, .Columns.Count).End(xlToLeft).Column
End With
Set wb2 = ThisWorkbook
Set ws2 = wb2.Sheets("BD")
'~~> Get the last Row and Last Column
With ws2
ws2LRow = .Range("A" & .Rows.Count).End(xlUp).Row
ws2LCol = .Cells(1, .Columns.Count).End(xlToLeft).Column
End With
For i = 2 To ws2LRow
For j = 3 To ws2LCol
If ws2.Cells(i, 3) = ws1.Cells(i, 1) And ws2.Cells(i, 5) = ws1.Cells(i, 2) And ws2.Cells(2, j) = ws1.Cells(1, j) Then
W = ???? 'duvida de como por a celula respectiva a semana junto com o indicador e a unidade
grato desde ja!
Postado : 04/04/2016 7:18 am