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.
  • Avatar do usuário
#63255
Pessoal, boa tarde.

Segue problema para contextualização:
Estou desenvolvendo uma planilha que será utilizada por vários usuários. A mesma está protegida por senha e permite a função de auto filtro para que os usuários possam filtrar as informações na planilha sem a necessidade de desproteger.

Porém, com a planilha protegida, não é possível limpar todos os filtros por meio da aba de "DADOS", o que obriga o usuário a "limpar" individualmente os filtros de cada coluna ou desproteger a planilha.

Desenvolvi uma macro, com o código a baixo, que desbloqueia a planilha + limpa todos os filtros + bloqueia a planilha. Porém, após executar a macro, a planilha é bloqueada SEM a opção de AUTO FILTRO. Logo, não é possível filtrar as colunas com a planilha protegida.

Sub Limpar_Filtros()

ActiveSheet.Protect Password:="SENHA", userinterfaceonly:=True

If ActiveSheet.FilterMode Then
On Error Resume Next
ActiveSheet.ShowAllData
On Error GoTo 0
End If

ActiveSheet.Protect Password:="SENHA"

End Sub

Pergunta: O que eu posso alterar no código da minha MACRO, para que eu possa executá-la sem altear as minhas permissões por usuário? Por exemplo, que o AUTOFILTRO fique ativo?
#63391
RTE escreveu: 25 Mar 2021 às 12:57 Desenvolvi uma macro, com o código a baixo, que desbloqueia a planilha + limpa todos os filtros + bloqueia a planilha.
Este comando não desprotege a planilha.~~~> ActiveSheet.Protect Password:="SENHA", userinterfaceonly:=True.
Ao invés, ele a protege, caso não esteja protegida.

Esse comando apenas permite que alterações via macro sejam efetuadas em planilha protegida, sem desprotegê-la.

Para proteger habilitando Auto Filtro você pode substituir por este ~~~> ActiveSheet.Protect Password:="SENHA", AllowFiltering:=True, userinterfaceonly:=True

E o comando abaixo pode ser excluído pois ele está protegendo uma planilha já protegida.
ActiveSheet.Protect Password:="SENHA"
JCabral agradeceu por isso
#69286
Olá, @DavidNeri .

Ficamos contentes porque você aproveitou as soluções deste tópico e agradecemos porque nos informou. :D
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