Notifications
Clear all

Ordenar Linhas na Importação

3 Posts
2 Usuários
0 Reactions
717 Visualizações
 caje
(@caje)
Posts: 97
Estimable Member
Topic starter
 

Boa tarde estou começando a programar em VBA excel e gostaria de saber se é possível orderar as linhas na hora da importação.

Exemplo importo a tabela de outro arquivo excel porém quando colo na macro gostaria que as linhas estivessem ordenadas de forma crescente de acordo com a informação da coluna H.

Exemplo do codigo.

Sub Importa()
ActiveSheet.Unprotect
Application.ScreenUpdating = False
   
   
Workbooks.Open Filename:= _
        ThisWorkbook.Path & "rec1.XLS"
Windows("rec1.XLS").Activate

NL = Application.WorksheetFunction.CountA(Range("B:B")) + 8
    'Atribui a variável NL a contagem de linhas não vazias na coluna B.
    ' + 8, estribui a variável a qtd. de linhas
    'não vazias + 8, que são as linhas vazias do cabeçalho


Range("D:D").Delete
    ' coluna  vazia, portanto desnecessária.
  
    
Columns("B:B").TextToColumns _
        Destination:=Range("B1"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
        Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
        :=Array(1, 4), TrailingMinusNumbers:=True

    'Esse trecho de código converterá a "coluna B" em data.
   
    


Range("B9:L" & NL).Select
Selection.Copy
Windows("projeto_recuperacao.xlsb").Activate
Sheets("plan2").Activate
Range("A4").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False

Application.CutCopyMode = False
    'Esse comando limpa a área de transferência
End Sub 

Se alguém tiver alguma sugestão agradeço.

 
Postado : 06/06/2013 10:37 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa noite!!

Use a pesquisa do fórum!!

Sub tente()
Dim oneRange As Range
Dim aCell As Range

Set oneRange = Range("SeuIntervalo")
Set aCell = Range("H1")

oneRange.Sort Key1:=aCell, Order1:=xlAscending, Header:=xlYes
End Sub
 
Postado : 06/06/2013 5:58 pm
 caje
(@caje)
Posts: 97
Estimable Member
Topic starter
 

Ok entedido vou pesquisar antes de colocar o post

Obrigado Alexandre.

 
Postado : 07/06/2013 5:07 am