Ordem alfabetica

Bom dia, Galera!
Gostaria da ajuda de vcs, eu fiz uma macro que coloca duas planilhas(abas) em ordem alfabetica. Funciona no meu office 365 sem problemas. Quando envio por e-mail para uma amiga q roda o excel 2010 ele apresenta o seguinte erro: erro em tempo de execução 438 - o objeto não aceita esta propriedade ou método.

Segue o erro ao depurar:

Poderiam por favor me ajudar como devo fazer para que execute em todas as versões do office, ou até criar uma segunda macro para executar no office 2010.

@lporto fala meu amigo, consegue dar uma luz?

Meu palpite é que essa planilha pode não estar ativa. Coloque um worsheet.select no começo do código.

1 Curtida

Sub Colocar_OrdemAlfabeticaGNOSIS()

’ Colocar_OrdemAlfabeticaGNOSIS Macro

ActiveWorkbook.Worksheets("Dados_Pessoais_ver1.0").AutoFilter.Sort.SortFields. _

    Clear

ActiveWorkbook.Worksheets("Dados_Pessoais_ver1.0").AutoFilter.Sort.SortFields. _

    Add2 Key:=Range("A5"), SortOn:=xlSortOnValues, Order:=xlAscending, _

    DataOption:=xlSortNormal

With ActiveWorkbook.Worksheets("Dados_Pessoais_ver1.0").AutoFilter.Sort

    .Header = xlYes

    .MatchCase = False

    .Orientation = xlTopToBottom

    .SortMethod = xlPinYin

    .Apply

End With

Sheets("VINCULO_INCLUSÃO").Select

ActiveWorkbook.Worksheets("VINCULO_INCLUSÃO").AutoFilter.Sort.SortFields.Clear

ActiveWorkbook.Worksheets("VINCULO_INCLUSÃO").AutoFilter.Sort.SortFields.Add2 _

    Key:=Range("B5:B53"), SortOn:=xlSortOnValues, Order:=xlAscending, _

    DataOption:=xlSortNormal

With ActiveWorkbook.Worksheets("VINCULO_INCLUSÃO").AutoFilter.Sort

    .Header = xlYes

    .MatchCase = False

    .Orientation = xlTopToBottom

    .SortMethod = xlPinYin

    .Apply

End With

End Sub

colocar onde aqui no codigo ? Eu peguei um office 2010 e tentei executar e dar o mesmo erro em outro computador, e eu inseri a informação na celula A5 ate A10 nas duas abas.

Não sei se faz diferença, mas eu mando bloqueado para ela não editar, deixo a planilha bloqueado por senha, mas ela pode inserir informações e excluir linhas.

Na segunda linha
Worksheets(“Dados_Pessoais_ver1.0”).select

1 Curtida

Fala Bruno. Parece que ja resolveram, mas se não, me envie por email: luiz@cet.com.br

1 Curtida

Quando faço isso da erro de tempo de execução 424. Esse erro da no meu excel 365 que sem isso funciona. Poderia favor copiar o codigo como precisa ficar pois coloquei na primeira linha deu erro, depois coloquei na segunda e deu o mesmo erro.

Obrigado pelo retorno meu amigo, ainda não consegui, mas o amigo aqui está ajudando.

ok, qqr coisa estou por aqui…

1 Curtida

Fala meu amigo @lporto , acho que o Valderson está offline agora, consegue me ajudar. Como pode ver no histórico, ele me pediu pra inserir um código, eu fiz e não consegui. Consegue me dar uma luz por favor.

me parece que ele não esta reconhecendo o Add2…

1 Curtida

eu fui em outro computador e fiz a macro direto no office 2010 e deu esse erro:

me parece que ele não esta reconhecendo o Add2…

O que posso fazer para corrigir ?

Naquela outra que vc mandou, creio que era apenas tirar o 2 do Add2.
Esta nova não sei te dizer…

Sub Colocar_OrdemAlfabeticaGNOSIS()

’ Colocar_OrdemAlfabeticaGNOSIS Macro

ActiveWorkbook.Worksheets("Dados_Pessoais_ver1.0").AutoFilter.Sort.SortFields. _

    Clear

ActiveWorkbook.Worksheets("Dados_Pessoais_ver1.0").AutoFilter.Sort.SortFields. _

    Key:=Range("A5"), SortOn:=xlSortOnValues, Order:=xlAscending, _

    DataOption:=xlSortNormal

With ActiveWorkbook.Worksheets("Dados_Pessoais_ver1.0").AutoFilter.Sort

    .Header = xlYes

    .MatchCase = False

    .Orientation = xlTopToBottom

    .SortMethod = xlPinYin

    .Apply

End With

Ficaria desta forma?

não… tire só o numero 2, o add fica

assim

ActiveWorkbook.Worksheets(“Dados_Pessoais_ver1.0”).AutoFilter.Sort.SortFields. _

Add Key:=Range("A5"), SortOn:=xlSortOnValues, Order:=xlAscending, _

DataOption:=xlSortNormal

fiz isso ai deu esse erro:

Só tirar o 2 tbm de la ?