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 apagar. Mostrar todas as postagens
Mostrando postagens com marcador apagar. Mostrar todas as postagens

Excel Tips - Excluindo linhas em branco ao abrir a Planilha - Removing Blank Rows Automatically


Olá pessoal!

Alguns perguntaram como fazer para deletar as linhas que estão em branco na planilha, logo que a esta for aberta.

Segue um código, simples, honesto, rápido e limpinho.

Private Sub Worksheet_Change (ByVal Target As Range)
'Deleta todas as linhas que estiverem em branco que existirem.  
'Previne loops infinitos  Let Application.EnableEvents = False   
'Caso haja mais de uma célula selecionada. 
If Target.Cells.Count > 1 Then
GoTo SelectionCode  
If WorksheetFunction.CountA(Target.EntireRow) = 0 Then 
Target.EntireRow.Delete 
End If  
Let Application.EnableEvents = True  
Exit Sub
SelectionCode: 
If WorksheetFunction.CountA(Selection.EntireRow) = 0 Then 
Selection.EntireRow.Delete 
End If  
Let Application.EnableEvents = True
End Sub


Tags: VBA, Excel, deletar, apagar, excluir, row, lines, linha, range, rows, blank, removing, EntireRow, automatically, delete

Excel Tips - Delete todas as Imagens e Gráficos de uma Planilha - Delete all Pictures or Charts on Worksheet

Inline image 1
Esta dica permite-nos deletar todas as imagens ou gráficos contidos na nossa planilha. Não há necessidade de selecionarmos cada imagem manualmente, selecionando-as uma a uma.

Apenas digite a tecla de atalho F5 com o MS Excel aberto ou vá para a caixa de diálogo.



Em seguida clique no botão Special da caixa de diálogo.



Selecione a opção Objetos desejados e clique no botão OK para fechar a caixa de diálogo.

Agora que tem todos os objetos da sua planilha selecionados, cheque se não algum deles que deseja manter na planilha, tal como a logomarca da sua empresa ou algo assim. Em seguida pressione a tecla Delete e todos os objetos serão deletados ao mesmo tempo.

TagsExcel, Tips, 



VBA Excel - Excluir linhas em branco logo ao abrir a Planilha - Removing Blank Rows Automatically



Sim pessoal. sempre perguntam como deletar linhas em branco da planilha, assim que esta for aberta. Segue um código, simples, honesto, rápido e limpinho:

Private Sub Worksheet_Change (ByVal Target As Range)
'Deleta todas as linhas que estiverem em branco que existirem.  
'Previne loops infinitos  Let Application.EnableEvents = False   
'Caso haja mais de uma célula selecionada. 


If Target.Cells.Count > 1 Then
GoTo SelectionCode  
If WorksheetFunction.CountA(Target.EntireRow) = 0 Then 
Target.EntireRow.Delete 
End If  


Let Application.EnableEvents = True  
Exit Sub  

SelectionCode: 
If WorksheetFunction.CountA(Selection.EntireRow) = 0 Then 
Selection.EntireRow.Delete 
End If  


Let Application.EnableEvents = True
End Sub

Tags: VBA, Excel, deletar, apagar, excluir, rows, blank, lines, linha, range, removing, EntireRow, automatically, delete





VBA Excel - Deletando todas as procedures da planilha - Delete all macros in a workbook









Simplemente passe o rodo na sua planilha!

Antes de continuar, um pequeno parênteses, deixe seus comentários para este post. 

Sub DeleteProcedureCode (ByVal wb As Workbook, _
                                            ByVal DeleteFromModuleName As String, 
                                            ByVal ProcedureName As String)

' deletes ProcedureName from DeleteFromModuleName in wb
Dim VBCM As CodeModule, ProcStartLine As Long, ProcLineCount As Long

    On Error Resume Next

    Set VBCM = wb.VBProject.VBComponents(DeleteFromModuleName).CodeModule

    If Not VBCM Is Nothing Then
        ' determine if the procedure exist in the codemodule
        Let ProcStartLine = 0
        Let ProcStartLine = VBCM.ProcStartLine(ProcedureName, vbext_pk_Proc)

        If ProcStartLine > 0 Then ' prosedyren finnes, slett den
            Let ProcLineCount = VBCM.ProcCountLines(ProcedureName, vbext_pk_Proc)
            VBCM.DeleteLines ProcStartLine, ProcLineCount
        End If

        Set VBCM = Nothing
    End If

    On Error GoTo 0
End Sub



Reference:

Tags:  VBA, Excel, content, module, módulo, Class Modules in VBA, delete, del, excluir, apagar, procedure, function  


VBA Excel - Deletando uma procedure de um módulo - Delete a procedure from a module

Esse código permite que você apague somente uma procedure dentro de um módulo. Alteração cirúrgica!

Antes de continuar, um pequeno parênteses, deixe seus comentários para este post. 

DeleteProcedureCode Workbooks ("wb_Bernardes.xlsb"), "mdl_Functions", "ExtractData"

Sub DeleteProcedureCode (ByVal wb As Workbook, _
                                           ByVal DeleteFromModuleName As String, _
                                           ByVal ProcedureName As String)

' deletes ProcedureName from DeleteFromModuleName in wb
Dim VBCM As CodeModule, ProcStartLine As Long, ProcLineCount As Long

On Error Resume Next

    Set VBCM = wb.VBProject.VBComponents(DeleteFromModuleName).CodeModule

    If Not VBCM Is Nothing Then
        ' determine if the procedure exist in the codemodule
        Let ProcStartLine = 0
        Let ProcStartLine = VBCM.ProcStartLine(ProcedureName, vbext_pk_Proc)

        If ProcStartLine > 0 Then ' prosedyren finnes, slett den
            Let ProcLineCount = VBCM.ProcCountLines(ProcedureName, vbext_pk_Proc)

            VBCM.DeleteLines ProcStartLine, ProcLineCount
        End If

        Set VBCM = Nothing
    End If

    On Error GoTo 0
End Sub

Reference:

Tags: VBA, Excel, content, module, módulo, Class Modules in VBA, delete, del, excluir, apagar, procedure, function 


VBA excel - Deletando um módulo - Delete a module using VBA in Microsoft Excel







Esse código aparentemente não tem uma grande importância, mas se souber usá-lo, poderá torná-lo parte da sua coletânea de artifícios para proteger seus projetos e aplicações.

Antes de continuar, um pequeno parênteses, deixe seus comentários para este post. 

Ao apagar um módulo, todas as funcionalidade da planilha dependentes desse módulo ficam automaticamente inativas. Que dica hein! 

Segue o código: DelVBComponent ActiveWorkbook, "mdl_MainFunctions"

Sub DelVBComponent (ByVal wb As Workbook, ByVal CompName As String)
' deletes the vbcomponent named CompName from wb

    Let Application.DisplayAlerts = False

    On Error Resume Next ' ignores any errors

    wb.VBProject.VBComponents.Remove wb.VBProject.VBComponents (CompName) 

    ' delete the component
    On Error GoTo 0

    Let Application.DisplayAlerts = True
End Sub



Reference:

Tags:  VBA, Excel, content, module, módulo, Class Modules in VBA, delete, del, excluir, apagar,     



VBA Excel - Colorindo o fundo das células de um range alternadamente - Row and column background color





Caros,
Continuando na linha: "Revisitando As primeiras funções que desenvolvi".



DICA: Todas as funções que criarmos que tenham interação física direta nas planilhas que estivermos utilizando, terão uma performance muito melhor se colocarmos o comando Application.ScreenUpdating = False, antes do início do respectivo processamento.


  • Como faço para Colorir o fundo das células de um range com cores alternadas?





Sub ShadeAlternR (rngTarget As Range, intColor As Integer, lngStep As Long)





    ' Coloca a cor de fundo = intColor to every lngStep rows in rngTarget





    ' example: ShadeAlternateRows Range("A1:D50"), 27, 2 (colors every 2 rows light yellow)











    Dim r As Long






    Let Application.ScreenUpdating = False






    If rngTarget Is Nothing Then Exit Sub





    





    With rngTarget





        .Interior.ColorIndex = xlColorIndexNone 





    





        ' remove any previous shading





        For r = lngStep To .Rows.Count Step lngStep





            Let .Rows(r).Interior.ColorIndex = intColor





        Next r





    End With





End Sub











Sub ShadeAlternC (rngTarget As Range, intColor As Integer, lngStep As Long)





    ' Coloca a cor de fundo = intColor to every lngStep column in rngTarget





    ' example: ShadeAlternateColumns Range("A1:J20"), 27, 2 (colors every 2 columns light  yellow)











    Dim c As Long






    Let Application.ScreenUpdating = False






    If rngTarget Is Nothing Then Exit Sub





    





    With rngTarget





        .Interior.ColorIndex = xlColorIndexNone 





    





        ' remove any previous shading





        For c = lngStep To .Columns.Count Step lngStep





            Let .Columns(c).Interior.ColorIndex = intColor





        Next c





    End With





End Sub

TagsBernardes, MS, Microsoft, Office, Excel, delete, deletar, apagar, excluir, planilha, colorindo, color, cell, colorindex















André Luiz Bernardes






A&A® - Work smart, not hard in any place.
Skype: inanyplace 

diHITT - Notícias