Este fórum está sendo desativado

Depois de 9 anos, este fórum será desativado. Mas calma.... estamos migrando para uma comunidade no DISCORD. Junte-se a nós.

ENTRAR PARA DISCORD

Tópicos relacionados a códigos VBA, gravação de macros, etc.
  • Avatar do usuário
Por renaneemm
Posts
#66266
Bom dia a todos do fórum!
Estou usando meus aprendizados com o fórum para finalizar uma macro, porém estou parado e resolvi pedir um help a vocês.

É um trivial de copiar valores de um arquivo e colar em outro, porém tem um detalhe que está me travando
Tenho um Excel com a aba Orig
Imagem
Tenho meu Excel destino já com a aba Dest
Imagem
o ultimo valor da Orig coluna B vai na primeira linha disponível da Dest coluna B, e escreva "Quantidade A" na célula da coluna A
o ultimo valor da Orig coluna C vai na primeira linha disponível da Dest coluna B também, e escreva "Quantidade B" na célula da coluna A
o ultimo valor da Orig coluna D vai na primeira linha disponível da Dest coluna B também, e escreva "Quantidade C" na célula da coluna A
assim por diante, usando da coluna B até a coluna G da Orig.
Imagem
Caso o valor seja 0 (0,000 no caso da Orig), não deva colar este valor ou deva apagar após o código.

Tenho já descrito o código que abre a janela, pede o Excel Orig para ser importado, ele copia os dados da aba Orig, porém cola tudo na Dest sem ser na ordem que desejava.
Código: Selecionar todos
Sub CopyQuant()
 Application.ScreenUpdating = False
 Dim flder As FileDialog
 Dim FileName As String
 Dim FileChosen As Integer
 Dim wkbSource As Workbook
 Dim wkbDest As Workbook
 Set wkbDest = ThisWorkbook
 Dim LastRowIndex As Integer
 Dim RowIndex As Integer
 Dim UsedRng As Range
 Dim npav As String
 Dim rangM As Range
 
OpenFile:
 Set flder = Application.FileDialog(msoFileDialogFilePicker)
 flder.Title = "Arquivo"
 flder.InitialFileName = "c:\"
 flder.InitialView = msoFileDialogViewSmallIcons
 flder.Filters.Clear
 flder.Filters.Add "Excel Files", "*.xls*"
 MsgBox ("Selecione o arquivo")
 FileChosen = flder.Show
 FileName = flder.SelectedItems(1)
 Set wkbSource = Workbooks.Open(FileName)
 
''''''''''''''''''''''''''''''''''''''''''''''''

 'DADOS PARA Dest
 wkbSource.Sheets("Orig").UsedRange.Copy
 ultimalinha = wkbDest.Sheets("Dest").Cells(Rows.Count, 1).End(xlUp).Row
 wkbDest.Sheets("Dest").Cells(wkbDest.Sheets("Dest").Rows.Count, "A").End(xlUp).Offset(ultimalinha + 1, 0).PasteSpecial xlPasteValues
Alguém sabe como posso dar um passo a mais neste caso?
Obrigado.
long long title how many chars? lets see 123 ok more? yes 60

We have created lots of YouTube videos just so you can achieve [...]

Another post test yes yes yes or no, maybe ni? :-/

The best flat phpBB theme around. Period. Fine craftmanship and [...]

Do you need a super MOD? Well here it is. chew on this

All you need is right here. Content tag, SEO, listing, Pizza and spaghetti [...]

Lasagna on me this time ok? I got plenty of cash

this should be fantastic. but what about links,images, bbcodes etc etc? [...]

Estamos migrando para uma comunidade no Discord