VBA Excel - 13 Funções Interessantes




É sempre bom podermos sacar algumas soluções prontas, para que apenas as copiemos e colemos em nossas necessidades. Ahhh, você nunca fez isso? Mas este Blog existe para isso. Para que você copie e use!

Para facilitar a sua vida coloco abaixo alguns exemplos que espero sejam úteis:

- Delete arquivos facilmente, quando estes não estiverem em uso.

Caracteres coringas (*) podem ser usados em substituição ao nome do arquivo (Mas cuidado!).

Sub DelFile() 
' Author: André Bernardes 
' Date: 13.10.2008 – 16:10 
' Contact: bernardess@gmail.com 

Dim MyFile As String 'Esta Linha de código é opcional 

On Error Resume Next 'Caso ocorram erros, estes não serão percebidos por usuários. 

Let MyFile = "c:\folder\filename.xls" 

Kill MyFile 
End Sub 

 - Protegendo a pasta (worksheet) corrente com uma senha de proteção.

Sub ProtegSheet() 
' Author: André Bernardes 
' Date: 13.10.2008 – 16:10 
Dim Psswrd ' Esta linha de código é opcional.
Let Psswrd = "bernardes"
ActiveSheet.Protect Psswrd, True, True, True 
End Sub

 - Desproteja a pasta (worksheet) corrente com uma senha de proteção.

Sub UnProtegSheet() 
' Author: André Bernardes
 ' Date: 13.10.2008 – 16:10
 ' Contact: bernardess@gmail.com Let Psswrd = "bernardes"

ActiveSheet.Unprotect Psswrd 
End Sub

 - Protegendo todas as pastas (worksheets) de uma mesma planilha.

Sub ProtegAll() 
' Author: André Bernardes 
' Date: 11.10.2008 – 08:05 
' Contact: bernardess@gmail.com Dim PlansCount 

' Esta linha de código é opcional. Dim j 
' Esta linha de código é opcional.

Let PlansCount = Application.Sheets.Count 

' Retorna quantas pastas (worksheets) contém nesta planilha.
Sheets(1).Select 

' Aqui selecionamos a primeira pasta (worksheet).
For j = 1 To PlansCount ActiveSheet.Protect
If j = PlansCount Then End End If
ActiveSheet.Next.Select Next j 
End Sub

 - Prevenindo o usuário quanto a área da pasta (worksheets) que não pode ser alterada.

Este exemplo previnirá o usuário sobre selecionar células num range (área) específico na pasta (worksheet). 

Este procedimento pode ser escrito na própria pasta (worksheet) ou num módulo.

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range) 
' Author: André Bernardes 
' Date: 10.10.2008 – 17:55 
' Contact: bernardess@gmail.com 

If Not Application.Intersect(Target, Range("A1:A100")) Is Nothing Then
Cells(ActiveCell.Row, 2).Select
MsgBox "Descupe, mas não pode selecionar células na faixa: A1:A100!"
End If
End Sub

 - Como obter o local de atividade da aplicação corrente:

MsgBox "Local de Atividade e nome da pasta: " & CurDir

 - Como mudar o local de atividade da aplicação:

ChDrive "D" ' changes to the F-station

 - Como mudar a pasta de atividade atual da aplicação:

ChDir "D:\Meus Documentos\Privado"

 - Como determinar se um arquivo existe na pasta:

If Dir("D:\Meus Documentos\MyPlan.xls") <> "" Then 

10º - ' Quando o arquivo não existe retorna "" (uma string vazia).

Se não especificar o local, o Excel usa o local atual. 

Se não especificar as pasta, o Excel usa a pasta onde a aplicação está. 

Como podemos criar uma nova pasta?

MkDir "NovaPastaParticular" ' Cria uma nova pasta no local que a planilha atual está.      
MkDir "D:\Meus Documentos\NovaPastaParticular" ' Cria uma nova pasta no local indicado.

11º - Como apagar uma pasta (A pastas precisa estar vazia):

RmDir "NovaPastaParticular" ' Deleta a subpasta no local onde a planilha atual está.
RmDir "D:\Meus Documentos\NovaPastaParticular" ' Deleta a subpasta no local indicado.

12º - Como copiar um arquivo (o mesmo precisa estar fechado):

FileCopy "Apontamentos.xls", "BAK-Apontamentos.xls" ' Copia-o na pasta local onde a planilha corrente está.

FileCopy "Apontamentos.xls", "X:\BAK-Apontamentos.xls" ' Copia o arquivo na pasta indicada.

13º - Como mover um arquivo (o mesmo precisa estar fechado):

Let Old = "C:\Old\Balanço.xls" ' Localização original do arquivo.
Let New = "C:\New\Balanço.xls" ' Nova localização do arquivo.

Name Old As New ' Move o arquivo.


Deixe os seus comentários! Envie este artigo, divulgue este link...

brazilsalesforceeffectiveness@gmail.com


✔ Brazil SFE®Author´s Profile  Google+   Author´s Professional Profile   Pinterest   Author´s Tweets

Nenhum comentário:

Postar um comentário

diHITT - Notícias