Vídeo recomendado
https://youtu.be/diWPPPhW-9E

Seleção de células vísivéis com Excel Protegido

Fórum para dúvidas sobre os fundamentos da linguagem de programação Visual Basic no contexto do VBA
Vandrexd
Acabou de chegar
Acabou de chegar
Mensagens: 6
Registrado em: Qui Dez 27, 2012 3:54 pm

Seleção de células vísivéis com Excel Protegido

Mensagem por Vandrexd »

Boa tarde,

Surgiu a necessidade de fazer uma rotina da seguinte forma,
Ao abrir a pasta de trabalho, caso tenha dados filtrados serão mostrados se não continua. Outra parte do código é o congelamento de painel numa célula específica (sem problemas para este caso).
Até então pra mim é simples, mas acontece que a planilha é protegida/compartilhada e o comando SpecialCells(xlCellTypeVisible) ou AutoFilterMode não funciona, alguém tem uma idéia de como posso selecionar/contar as células não visíveis sendo que a planilha é protegida e compartilhada?
desde já agradeço.
Segue a rotina:

Código: Selecionar todos

Private Sub Workbook_Open()

Dim contar, cont As Integer

Range("a1:a2000").Select
contar = Selection.SpecialCells(xlCellTypeVisible).Count
cont = Selection.Cells.Count

If contar <> cont Then
Sheets(1).ShowAllData
End If

If ActiveWindow.FreezePanes = True Then
ActiveWindow.FreezePanes = False
Range("G8").Select
ActiveWindow.FreezePanes = True
Else
Range("G8").Select
ActiveWindow.FreezePanes = True
End If

Sheets(1).Range("a7").Select
End Sub


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Avatar do usuário
vbalexandre
Manda bem
Manda bem
Mensagens: 122
Registrado em: Sáb Dez 11, 2010 6:57 pm

Re: Seleção de células vísivéis com Excel Protegido

Mensagem por vbalexandre »

Boa noite!!

Se gravar uma Macro verá as propriedades como segue abaixo

Código: Selecionar todos

Sub Macro1()
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub
Essa macro que segue abaixo não permite selecionar as células bloqueadas.

Código: Selecionar todos

Sub Macro2()
    ActiveSheet.Unprotect
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
    ActiveSheet.EnableSelection = xlUnlockedCells
End Sub

Para mais leia:
http://www.cpearson.com/excel/Protection.aspx

Att


Vandrexd
Acabou de chegar
Acabou de chegar
Mensagens: 6
Registrado em: Qui Dez 27, 2012 3:54 pm

Re: Seleção de células vísivéis com Excel Protegido

Mensagem por Vandrexd »

Olá Alexandre,

Agradeço sua resposta (tinha pensado antes), porém o arquivo também é compartilhado, ou seja, após compartilhamento a função proteger/desproteger desabilita inclusive para o vba.
Esse código que postei acima funciona para qualquer usuário que abra a paste de trabalho com ou sem permissão para edição, portanto se colocar qualquer função com o efeito de proteger/desproteger não funcionará.


Avatar do usuário
vbalexandre
Manda bem
Manda bem
Mensagens: 122
Registrado em: Sáb Dez 11, 2010 6:57 pm

Re: Seleção de células vísivéis com Excel Protegido

Mensagem por vbalexandre »

Boa noite!!

Realmente o VBA não funcionará em arquivo compartilhado.

O ideal seria separar dois arquivos.
http://www.mrexcel.com/forum/excel-ques ... kbook.html

Tente mudar o modo.

Código: Selecionar todos

Option Explicit

Sub AleVBA_Exclusivo()
     
    If ActiveWorkbook.MultiUserEditing Then
        Application.DisplayAlerts = False
        ActiveWorkbook.ExclusiveAccess
        Application.DisplayAlerts = True
        MsgBox "Acesso Exclusivo"
    End If
     
End Sub

Código: Selecionar todos

Sub AleVBA_Compartilhado()
     
    If Not ActiveWorkbook.MultiUserEditing Then
        Application.DisplayAlerts = False
        ActiveWorkbook.SaveAs ActiveWorkbook.Name, accessmode:=xlShared
        Application.DisplayAlerts = True
        MsgBox "Now Shared"
    End If
     
End Sub
Leia:
viewtopic.php?f=21&t=2198#.U3_2P_ldX1Y
http://info.abril.com.br/forum/viewtopi ... 49&t=15490

Att


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Responder