Ir ao conteúdo

Nosila

Membro Júnior
  • Posts

    15
  • Cadastrado em

  • Última visita

Reputação

0
  1. Olá Rafael! Li sua solução e achei bom, mas, como não sou expert em VBA não consegui reproduzir sua instrução adaptando para a minha nescessidade. Vou postar a minha planilha e peço sua ajuda para isso. Eu acabei fazendo igual a nosso colega, usando os códigos de gravação do VBA. A primeira lista foi de boa, mas, na segunda dá erro e não saio disso. Gostaria de aplicar seu metodo. Mas, se alguém entendeu e puder me ajudar, serei grato também. Na minha planilha, tenho um codigo para incluir e excluir linha, conforme a lista vai aumentando. Por isso, tenho no codigo o esquema para encontrar a última linha e a última coluna visivel. Com isso, consigo encontrar as outras variáveis para montar o range, o que não consigo é concluir a classificação. Sub Classificar_Lista() ' ' Classificar_Lista Macro ' Classifica as listas de 'Empresas Anfitriã' e 'Oradores' ' Dim UltimaLinha As Long Dim UltimaColuna As Long Dim PrimeiraLinha As Long Dim PrimeiraColuna As Long Dim PrimeiraLinhaClass As Long Dim PrimeiraColunaClass As Long Application.ScreenUpdating = True ' Interrompe a atualização da tela; Application.ScreenUpdating = False ' Desprotege a Aba; ActiveSheet.Unprotect ' Seleciona a planilha ativa; Set sh = ActiveSheet ' Obs. pessoal: Não entendi este comando, futuramente pesquisar o que está acontecendo aqui, ' mas, o comando é nescessário para a execução a seguir; Set rng = sh.Range("A1").SpecialCells(xlCellTypeLastCell) ' Recupera a última linha VISIVEL; UltimaLinha = rng.Row ' Recupera a última coluna VISIVEL; UltimaColuna = rng.Column ' Retorna o resultado em uma caixa de texto na tela; ' MsgBox "A última linha é: " & UltimaLinha & vbCrLf & "A última coluna é: " & UltimaColuna, vbInformation ' Posiciona na última célula à esquerda na tabela à classificar UltimaLinha = UltimaLinha - 4 UltimaColuna = UltimaColuna - 11 ' Posiciona na primeira célula que há valor na coluna Selection.End(xlUp).Select Selection.End(xlUp).Select PrimeiraLinha = ActiveCell.Row PrimeiraColuna = UltimaColuna PrimeiraLinha = PrimeiraLinha + 2 ' Estabelece os parâmetros para a classificação da coluna ORADORES Range(Cells(PrimeiraLinha, PrimeiraColuna), Cells(UltimaLinha, UltimaColuna)).Select ActiveWorkbook.Worksheets("Empresas").Sort.SortFields.Clear ActiveWorkbook.Worksheets("Empresas").Sort.SortFields.Add Key:=Range(Cells(PrimeiraLinha, PrimeiraColuna), Cells(UltimaLinha, UltimaColuna)), _ SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal With ActiveWorkbook.Worksheets("Empresas").Sort .SetRange Range(Cells(PrimeiraLinha, PrimeiraColuna), Cells(UltimaLinha, UltimaColuna)) .Header = xlNo .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With UltimaLinha = 0 UltimaColuna = 0 PrimeiraLinha = 0 PrimeiraColuna = 0 ' Iniciaa classificação para a segunda tabela na aba. ' Obs. pessoal: Não entendi este comando, futuramente pesquisar o que está acontecendo aqui, ' mas, o comando é nescessário para a execução a seguir; Set rng = sh.Range("A1").SpecialCells(xlCellTypeLastCell) ' Recupera a última linha; UltimaLinha = rng.Row ' Recupera a última coluna; UltimaColuna = rng.Column ' Retorna o resultado em uma caixa de texto na tela; ' MsgBox "A última linha é: " & UltimaLinha & vbCrLf & "A última coluna é: " & UltimaColuna, vbInformation ' Posiciona na última célula à direita na tabela a classificar UltimaLinha = UltimaLinha - 4 ' Posiciona na última célula à direita na tabela a classificar PrimeiraColuna = UltimaColuna - 7 ' Posiciona na primeira célula que há valor na coluna Selection.End(xlUp).Select Selection.End(xlUp).Select PrimeiraLinhaClass = UltimaLinha PrimeiraColunaClass = PrimeiraColuna PrimeiraLinha = ActiveCell.Row PrimeiraLinha = PrimeiraLinha + 2 Range(Cells(PrimeiraLinha, PrimeiraColuna), Cells(UltimaLinha, UltimaColuna)).Select ActiveWorkbook.Worksheets("Empresas").Sort.SortFields.Clear ActiveWorkbook.Worksheets("Empresas").Sort.SortFields.Add2 Key:=Range( _ Cells(PrimeiraLinha, PrimeiraColuna), Cells(UltimaLinha, UltimaColuna)), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _ xlSortNormal With ActiveWorkbook.Worksheets("Empresas").Sort .SortFields.Clear .SortFields.Add Key:=Range(Cells(PrimeiraLinha, PrimeiraColuna), Cells(UltimaLinha, UltimaColuna)), _ SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal .SetRange Range(Cells(PrimeiraLinha, PrimeiraColuna), Cells(UltimaLinha, UltimaColuna)) .Header = xlYes .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With ' Salvando Planilha; ActiveWorkbook.Save ' Protege a planilha; ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True ' Apenas posiciona o cursor; ActiveSheet.Cells(C1).Select ' Reativa a atualização da tela; Application.ScreenUpdating = True ' End Sub Pasta1.xlsx
  2. Meu cartão SD que uso no Smart Motorola G5 Plus, está com os dados corrompidos. Eu havia formatado para unir a memória interna do smart, quando tentei desfazer, deu erro e depois disso não consegui mais usa-lo. Já usei o Easus para "escovar" os dados (foi feito com exito), mas, é só. Não dá para formatar (a opção nem fica disponível) ou excluir a partição. Creio que o hardware está bom, mas, preciso saber como conseguir formata-lo. Se eu conseguir excluir as partições (o smart criou uma partição a mais), consigo formatar. Alguém pode me orientar nisso?
  3. Olá! Tentei em modo compatibilidade e nada...nada mesmo... nada acontece... e se tento rodar apenas em modo compatibilidade, exemplo, com windows 7, surge o erro 0xc000007b.
  4. Olá ! Modo de compatibilidade já tentei em todos e nada, vou tentar em modo adm. Valeu!
  5. Não consigo instalar esse jogo no windows 10, até segui uma dica que diz para alterar a informação do 'directx 9.0c par 0' no arquivo autorun.cfg, até instala, mas, é só. Não roda. Alguém pode me ajudar com isso?

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...