Propósito

✔ Programação GLOBAL® - Quaisquer soluções e/ou desenvolvimento de aplicações pessoais, ou da empresa, que não constem neste Blog devem ser tratados como consultoria freelance. Queiram contatar-nos: brazilsalesforceeffectiveness@gmail.com | ESTE BLOG NÃO SE RESPONSABILIZA POR QUAISQUER DANOS PROVENIENTES DO USO DOS CÓDIGOS AQUI POSTADOS EM APLICAÇÕES PESSOAIS OU DE TERCEIROS.

.: Vitrine

Carregando artigos...

Views

Mostrando postagens com marcador mover. Mostrar todas as postagens
Mostrando postagens com marcador mover. Mostrar todas as postagens

VBA Excel - Mova todas as Planilhas - Move all Excel files

Inline image 7

Não é tão difícil precisarmos rapidamente de um código que mova arquivos de um local específico para outro. No exemplo abaixo pode fazer isso com planilhas, mas certamente poderá adequar o código para mudar qualquer tipo de arquivo para onde desejar.

É importante perceber que mover envolver apagar os mesmos arquivos da origem.
Sub MoveFiles2NewFolder()
    Dim FSO As Object
    Dim FromPath As String
    Dim ToPath As String
    Dim FileExt As String
    Dim FNames As String
    Let FromPath = "C:\Bernardes\Place01\Database"  '<< Change
    Let ToPath = "C:\Bernardes\newPlace\" & Format(Now, "yyyy-mm-dd h-mm-ss") _ 
           & " Excel" & "\" 
    Let FileExt = "*.xl*"   
    If Right(FromPath, 1) <> "\" Then
        FromPath = FromPath & "\"
    End If 
    Let FNames = Dir(FromPath & FileExt)
    If Len(FNames) = 0 Then
        MsgBox "Nenhum arquivo encontrado em " & FromPath 
        Exit Sub
    End If 
    Set FSO = CreateObject("scripting.filesystemobject") 
    FSO.CreateFolder (ToPath)
    FSO.MoveFile Source:=FromPath & FileExt, Destination:=ToPath
    MsgBox "You can find the files from " & FromPath & " in " & ToPath
End Sub


Tags: VBA, Excel, folder, file, pasta, arquivo, mover, planilha





VBA Access - Animando o título do formulário e do ícone da Barra de Tarefas - Animate String


Neste exemplo estou aplicando o código no MS Access, mas com poucas adaptações também pode ser aplicado aos demais produtos da suíte MS Office.

É um efeito que deve ser usado de forma comedida, caso contrário chama muito a atenção. Talvez possa utilizá-lo:

- Quando termina um processamento e você deseja chamar a atenção para o formulário;
- Quando determinado valor é alcançado, deseja que o formulário já indique chamando a atenção;
- etc...

Para aplicá-lo a um formulário insira o código dessa maneira (Defina 300 ms para testar):

Private Sub Form_Timer()
    ' Author:                     Date:               Contact:                 URL:
    ' André Bernardes             20/05/2010 11:15    bernardess@gmail.com     André Luiz Bernardes - CURRICULUM VITAE
    ' Atualiza o relógio para ver que funciona.    

    [Form_frm_Avisos].Caption = AniText("  Software Bernardes® - Copyright© Bernardes S.A.", 3)
    
    [Form_frm_Avisos].Repaint
End Sub

Agora, você pode aplicar este efeito também no título da aplicação, ou seja, alterar o Caption do próprio MS Access. Isso envolve o título da janela aberta e também o ícone na barra de trabalho. Como?

Private Sub Form_Timer()
    ' Author:                     Date:               Contact:                 URL:
    ' André Bernardes             20/05/2010 11:15    bernardess@gmail.com     https://sites.google.com/site/bernardescvcurriculumvitae/
    ' Atualiza o relógio para ver que funciona.
    
    Dim dbs As Database
    Set dbs = CurrentDb

    'Me.lblTime.Caption = ""
    [Form_frm_Avisos].lblTime.Caption = Right(Now(), 9)

    [Form_frm_Avisos].Caption = AniText("  Software Bernardes® - Copyright© Bernardes S.A.", 3)
    
    dbs.Properties!AppTitle = AniText("  Software Bernardes® - Copyright© Bernardes S.A.", 1)

    Application.RefreshTitleBar

    [Form_frm_Avisos].Repaint
End Sub

Sim, mas para que esse processo funcione, precisamos da função AniText, segue:

Global Cl As Integer
Global at As Integer
Public Function AniText(str As String, eff As Integer) As String

    ' Author:                     Date:               Contact:                 URL:
    ' André Bernardes             13/03/2010 12:22    bernardess@gmail.com     https://sites.google.com/site/bernardescvcurriculumvitae/
    ' Retorna a string animada.
    
    Dim lop

    Let Cl = Len(str) + 1
    Let at = at + 1

    If at >= Cl Then
        Let at = 1
    End If

    Select Case eff
    Case 0          'Move to Right
        Let AniText = Mid(str, at) + Left(str, at)
    Case 1          'Move to Left
        Let AniText = Mid(str, (Cl - at)) + Left(str, (Cl - at))
    Case 2          'Move to Centre
        Let AniText = Mid(str, (Cl - at)) + Left(str, (Cl - at)) + Mid(str, at) + Left(str, at)
    Case 3          'Move to BothSide
        Let AniText = Mid(str, at) + Left(str, at) + Mid(str, (Cl - at)) + Left(str, (Cl - at))
    End Select
End Function


References:


Tags: VBA, Office, Access, Tips, animar, animate, form, formulário, caption, move, mover, string, texto,
diHITT - Notícias