- 29 Jan 2016 às 19:04
#7161
Boa tarde, sei que ja postei uma duvida similar... e foi atendida
No entanto, fuçando na internet, consegui me deparar com outras soluções, que acredito, possam auxiliar muitos usuarios do site
Achei dois codigos, mas nao consigo fazer com que funcionem.
Gostaria que se alguem pudesse ajudar, me auxiliasse em como corrigi-los
***********************************************
No primeiro codigo, eu indico a pasta origem dos arquivos. Ele deve fazer uma varredura em todos os arquivos com a extensao indicada e copiar/colar os valores das planilhas (o que não esta ocorrendo)
No segundo codigo, atraves de uma opendialog, eu seleciono uma pasta e a macro deveria se encarregar de puxar as infos... o ideal é que puxasse todos os valores disponiveis (até a ultima linha) e fosse colando planilha embaixo de planilha.
Se algum cranio ae conseguir ajudar, fico muitissimo grato
Obrigado desde ja
e bom final de semana
No entanto, fuçando na internet, consegui me deparar com outras soluções, que acredito, possam auxiliar muitos usuarios do site
Achei dois codigos, mas nao consigo fazer com que funcionem.
Gostaria que se alguem pudesse ajudar, me auxiliasse em como corrigi-los
***********************************************
No primeiro codigo, eu indico a pasta origem dos arquivos. Ele deve fazer uma varredura em todos os arquivos com a extensao indicada e copiar/colar os valores das planilhas (o que não esta ocorrendo)
Código: Selecionar todos
***********************************************Sub Abrir_Copiar_Colar()
Dim FSO As Object
Dim Pasta As String
Dim Planilha As Object
Dim OpenBook As String
Set FSO = CreateObject("Scripting.FileSystemObject")
Pasta = "C:\TESTE" 'Pasta com as planilhas que serão abertas e copiadas
Application.Calculation = xlCalculationManual
Application.ScreenUpdating = False
For Each Planilha In FSO.GetFolder(Pasta).Files
If InStr(1, Planilha, ".xlsx") = 0 Then GoTo PRÓXIMO
Workbooks.Open (Planilha)
OpenBook = ActiveWorkbook.Name
'Seu código para copiar
Windows(ThisWorkbook.Name).Activate
'Seu código para colar
Application.CutCopyMode = False
Workbooks(OpenBook).Close False
PRÓXIMO:
Next
Application.ScreenUpdating = True
MsgBox "Dados Copiados com Sucesso!", vbInformation, "Aviso"
Application.Calculation = xlCalculationAutomatic
End Sub
No segundo codigo, atraves de uma opendialog, eu seleciono uma pasta e a macro deveria se encarregar de puxar as infos... o ideal é que puxasse todos os valores disponiveis (até a ultima linha) e fosse colando planilha embaixo de planilha.
Código: Selecionar todos
Sub ImportarDados()
Dim fs, f, f1, fc
Dim Pasta As String
Dim Coluna As Integer
'Abre uma caixa de diálogo para possibilitar a seleção de uma pasta
Application.FileDialog(msoFileDialogFolderPicker).Show
Pasta = Application.FileDialog(msoFileDialogFolderPicker).SelectedItems(1)
Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.GetFolder(Pasta)
Set fc = f.Files
'Variável para controlar a coluna na qual será efetuada a cópia
Coluna = 1
For Each f1 In fc
'Verifica a extensão do arquivo
If Right(f1.Name, 3) = "xlsx" Then
'Abre o arquivo Excel
Workbooks.Open f1.Name
'Seleciona a Plan1
Sheets("Plan1").Select
'Faz a cópia
ActiveSheet.Range("A1:A10").Copy ThisWorkbook.Sheets("Plan1").Cells(1, Coluna)
'incrementa o número da coluna
Coluna = Coluna + 1
'Fecha o arquivo Excel
Workbooks(f1.Name).Close SaveChanges:=False
End If
Next
End Sub
Se algum cranio ae conseguir ajudar, fico muitissimo grato
Obrigado desde ja
e bom final de semana
Editado pela última vez por laennder em 29 Jan 2016 às 19:07, em um total de 1 vez.
Razão: Correção do título para adaptar as regras