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.
#43959
Boa tarde a todos, antes de mais nada gostaria de pedir desculpa se minha pergunta já foi respondida, mas estou mandando essa mesnagem depois de muito esforço e muita pesquisa tentando resolver e não obtendo sucesso.

Eu desenvolvi uma planilha que roda perfeitamente em minha máquina Windows 10 x64 com Office 2016 x84 (minha máquina pessoal).
Eu passei ela pra outra máquina, nessa que acontece o problema, com Windows 10. Nessa máquina tinha o office 2016 x64 instalado, eu desinstalei e instalei o office 2016 x84.

Fiz diversas pesquisas acreditando que o problema era por causa do MSCOMCTL.OCX, não consegui resolver, mas cheguei a algumas conclusões.

O erro é o seguinte e imagino já ser bastante conhecido por aqui:

Erro em tempo de execução '438':
O objeto não aceita esta propriedade ou método.


Ao clicar em depurar ele me indica que o erro se encontra em (o código da sub completo se encontra no fim do tópico):
Código: Selecionar todos
 ActiveWorkbook.Worksheets("Listagem").ListObjects("Listagem").Sort.SortFields. _
        Add2 Key:=Range("Listagem[Cód.]"), SortOn:=xlSortOnValues, Order:= _
        xlDescending, DataOption:=xlSortNormal
Conclusão depois de acreditar que o problema era devido a vulnerabilidades em versão 64bits, que posso não estar no caminho correto para resolver, pois eu consigo inserir uma ListView em um formulário utilizando essa outra máquina (pode não ter nada a ver, só um palpite). Não sei qual caminho seguir, não consigo encontrar algo que me ajude a solucionar. O que me intriga é o código funcionar perfeitamente na primeira máquina que eu utilizei(minha máquina pessoal).

Agradeço desde já a atenção e a ajuda. Serei muito grato se alguém puder me ajudar.
Código: Selecionar todos
Sub organizarlistagem()
    Range("A2:L10000").Activate
    ActiveWorkbook.Worksheets("Listagem").ListObjects("Listagem").Sort.SortFields. _
        Clear
    ActiveWorkbook.Worksheets("Listagem").ListObjects("Listagem").Sort.SortFields. _
        Add2 Key:=Range("Listagem[Cód.]"), SortOn:=xlSortOnValues, Order:= _
        xlDescending, DataOption:=xlSortNormal
    With ActiveWorkbook.Worksheets("Listagem").ListObjects("Listagem").Sort
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
End Sub
#44018
Anexe a planilha para que possamos testar.
#44036
Resolvi meu problema da seguinte forma. Ainda não sei o porque do código anterior não funcionar em outros computadores, testei mais de 1 com mesmas configurações.

Mas substitui meu código por esse e funcionou perfeitamente.
Código: Selecionar todos
Sub organizarlistagem()
    Sheets("Listagem").Activate
    Dim DataRange As Range
    Set DataRange = ActiveSheet.UsedRange
    DataRange.Sort Key1:=Range("A1"), Order1:=xlDescending, Header:=xlYes
End Sub
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