Amigos,
Consegui achar uma solução na internet, segue abaixo o código que estou utilizando:
Option Explicit
Sub Importa_Fiscal()
Application.ScreenUpdating = False
'Definição das variáveis
'-----------------------
Dim W As Worksheet
Dim WNew As Workbook
Dim ArqParaAbrir As Variant
Dim a As Integer
Dim NomeArquivo As String
'Captura arquivo para tratamento
'-------------------------------
ArqParaAbrir = Application.GetOpenFilename("Arquivo de Retorno (*.*), *.*", Title:="Escolha o arquivo a ser importado", MultiSelect:=True)
If Not IsArray(ArqParaAbrir) Then
If ArqParaAbrir = "" Or ArqParaAbrir = False Then
MsgBox "Processo abortado. Não foi selecionado arquivos para processar...", vbOKOnly, "Processo abortado"
Exit Sub
End If
End If
Set W = Sheets("Fiscal")
W.UsedRange.EntireColumn.Delete
W.Select
For a = LBound(ArqParaAbrir) To UBound(ArqParaAbrir)
NomeArquivo = ArqParaAbrir(a)
Application.Workbooks.Open (NomeArquivo)
Set WNew = ActiveWorkbook
ActiveSheet.Range("A1").CurrentRegion.Select
Selection.Copy Destination:=W.Cells(W.Rows.Count, 1).End(xlUp).Offset(1, 0)
Application.DisplayAlerts = False
ActiveWorkbook.Close SaveChanges:=False
Application.DisplayAlerts = True
W.Cells(W.Rows.Count, 1).End(xlUp).Offset(1, 0).Select
Next a
Application.ScreenUpdating = True
MsgBox "Processo concluído", vbOKOnly, "Processo concluído"
End Sub
Tenho uma nova dúvida, feito a importação das bases, eu precisava pegar a SOMA de VALORES de uma certa coluna cujo seto alguns filtros antes... Isso é possível ? Vejam o anexo para melhor entendimento.
A idéia é pegar a soma dos valores de determinada coluna e colar em uma célula específica em outra sheet.
Estou travado na parte de pegar a soma dos valores, o pior é que nem sempre serão o mesmo número de linhas dessa coluna onde tenho que pegar a soma dos valores...
Estou travado, me ajudem por favor!!!
Sub teste()
Sheets("Planilha1").Select
Cells.Select
Selection.AutoFilter
Selection.AutoFilter
Range("D6").Select
ActiveSheet.Range("$B$2:$AQ$10931").AutoFilter Field:=3, Criteria1:=Array( _
"121", "448", "450"), Operator:=xlFilterValues
Range("R3").Select
ActiveSheet.Range("$B$2:$AQ$10931").AutoFilter Field:=17, Criteria1:= _
"Entrada"
Range("AO3").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Sheets("TESTE RESULTADO").Select
Range("B2").Select
ActiveSheet.Paste
Range("C2").Select
ActiveCell.FormulaR1C1 = "=SUM(RC[-1]:R[134]C[-1])"
Range("C2").Select
End Sub
Mais uma vez, obrigado!
Postado : 25/04/2018 8:19 pm