Eu mexi somente com o VBA.
Troquei o código do botão de lugar, coloquei num módulo chamado Planilhando, assim o código consegue enxergá-lo a partir do código da EstaPastadeTrabalho.
Olha como ficou... vc precisa copiar o código da EstaPastaDeTrabalho
Vc precisa copiar o módulo Planilhando
Vc precisa mudar o código do botão CommandButton14 para o que eu coloquei na folha de código da planilha.
Para efeito ilustrativo, este foi o código que usei na Pasta De Trabalho
Private Sub Workbook_Open()
Dim UltimaLimpeza As Date
With ThisWorkbook
If Not NomeExiste("UltimaLimpeza") Then
.Names.Add Name:="UltimaLimpeza", RefersTo:=VBA.Date() - 30
End If
If NomeExiste("UltimaLimpeza") Then
UltimaLimpeza = Application.Evaluate(.Names("UltimaLimpeza").Value)
If VBA.Month(UltimaLimpeza) < VBA.Month(VBA.Date()) Then
If VBA.Day(VBA.Date()) >= 2 Then
Call CodigoDoBotao14
End If
End If
End If
End With
End Sub
Este foi o código que usei no módulo Planilhando (ah, eu dei uma melhorada no código de limpeza, ficou menos e fácil de entender):
Public Sub CodigoDoBotao14()
Dim iRet As Integer
Dim strPrompt As String
Dim strTitle As String
' Título da Janela
strTitle = "AVISO"
' Promt
strPrompt = "Deseja realmente inciar o Resumo Mensal de Atividades?" & " " & "Esta ação deve ser feita apenas no final de cada mês e apagará seu histórico mensal."
'Mensagem solicitada
iRet = MsgBox(strPrompt, vbYesNo, strTitle)
' Opção de Botão
If iRet = vbYes Then
Limpar_resumo
End If
End Sub
Public Sub Limpar_resumo()
Dim rng As Range
'Resumo
With Sheets("Resumo")
Set rng = Application.Union(.Range("E9:G17"), .Range("E19"), .Range("A24:H61"), .Range("E40"), .Range("G40"), .Range("D3:D5"), _
.Range("F3"), .Range("F19"), .Range("F20"), .Range("G9:G17"), .Range("H9:H18"), .Range("E18"), .Range("E20"))
End With
rng.ClearContents
Set rng = Nothing
End Sub
Public Function NomeExiste(Nome As String) As Boolean
On Error Resume Next
Dim Conteudo As Variant
Conteudo = ThisWorkbook.Names(Nome).Value
NomeExiste = (Err.Number = 0)
End Function
Este é o novo código do botão, isolado na folha de código da planilha:
Private Sub CommandButton14_Click()
Call CodigoDoBotao14
End Sub
O anexo mostra tudo funcionando.
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Postado : 29/01/2015 8:34 pm