Tag Archives: Linhas

Excel – Removendo quebras de linha – Parte 2

Recentemente, postei um artigo divulgando uma “artimanha” para efetuar a remoção de quebras de linha em células do Excel. Apesar de engenhosa e funcional, a solução fazia uso do Microsoft Word, o que não chega a ser um grande problema, já que os dois softwares são praticamente irmãos.

Mas, é possível fazer o mesmo, sem sair do Excel. Para isso, acione a caixa de diálogo Substituir (Ctrl+U), e no campo Localizar, mantenha a tecla Alt pressionada e digite 0010, soltando a tecla Alt em seguida. Vai aparecer um caractere estranho, mas sem pânico, pois ele é a representação da quebra de linha no Excel. Agora é só clicar em Substituir, ou Substituir tudo.

Simples, rápido, funcional!

Bom proveito!

Referências

http://www.pcreview.co.uk/forums/thread-1766687.php

VBA – Excluindo linhas em branco no Excel

De vez em quando a Microsoft é mãe. Além de fornecer a ferramenta (guardadas as devidas proporçõe$), fornece vários exemplos de como resolver os problemas com elas. Seria esse o valor agregado?

Enfim, mas uma dúvida frequente em emails de fóruns é pelo VBA conseguir excluir as linhas que estão em branco ou vazias em uma planilhas. Outros códigos já disponibilizados aqui no fórum já promovem a façanha com um pequeno ajuste. Mas, para quem quer um código mais focado, a própria Microsoft disponibiliza a seguinte Macro:

' The following code deletes blank rows from the active worksheet.
 
Dim Counter
Dim i As Integer
 
Sub DelRow()
 
' Input box to determine the total number of rows in the worksheet.
    Counter = InputBox("Enter the total number of rows to process")
    ActiveCell.Select
    ' Loops through the desired number of rows.
    For i = 1 To Counter
        ' Checks to see if the active cell is blank.
        If ActiveCell = "" Then
            Selection.EntireRow.Delete
 
            ' Decrements count each time a row is deleted. This ensures
            ' that the macro will not run past the last row.
            Counter = Counter - 1
        Else
            ' Selects the next cell.
            ActiveCell.Offset(1, 0).Select
        End If
 
    Next i
 
End Sub

A parte bacana é que o código, ao ser executado, ele mostra um InputBox solicitando a quantidade de linhas que serão processadas, ou avaliadas. É uma boa, pois você pode não querer varrer todas as linhas de uma planilha certo?

O link original é:

http://support.microsoft.com/kb/110759/pt-br

Bom proveito!

VBA – Ocultando linhas em branco em uma lista no Excel

Fruto da necessidade de alguns colegas do Fórum, coloco aqui uma macro que possibilita ocultar as linhas de uma lista ou tabela no Excel. O efeito pode muito bem ser conseguido através do recurso AutoFiltro, mas, como relatado, algumas vezes usuários menos avançados não conhecem a funcionalidade para produzir o efeito determinado.

Para alguns familiarizados, a rotina é uma adaptação da macro que também existe aqui no blog para excluir linhas de acordo com um critério:

Function OcultaLinhasPorCriterio(ByVal nomePlanilha As String, ByVal linhaInicial As Integer, ByVal linhaFinal As Integer, ByVal colunaCriterio As Integer) As Integer
    Dim linhasOcultadas As Integer
    Dim i As Integer
    linhasOcultadas = 0
    With ActiveWorkbook.Worksheets(nomePlanilha)
        i = linhaInicial
        While i <= linhaFinal
            If IsEmpty(.Cells(i, colunaCriterio).Value) Then
                .Cells(i, colunaCriterio).Rows.Hidden = True
                linhasOcultadas = linhasOcultadas + 1
            End If
            i = i + 1
        Wend
    End With
    OcultaLinhasPorCriterio = linhasOcultadas
End Function

Em míudos:

nomePlanilha é o nome da planilha sobre a qual a macro atuará
linhaInicial é o número da linha pela qual a macro comecará a avaliar.
linhaFinal é o número da linha até a qual a macro fará a avaliação
colunaCriterio é o índice numérico da coluna na qual a macro fará o teste do valor vazio.

A macro abaixo faz a chamada a função apontadando para a panilha de nome “Plan1” avaliando a coluna de índice 5 (E) percorrendo até a última linha ocupada:

Sub OcultarLinhasEmBranco()
    MsgBox OcultaLinhasPorCriterio("Plan1", 2, ActiveSheet.UsedRange.Rows.Count, 5) & " linhas ocultadas"
End Sub

Bom proveito!

Excel VBA – Delete duplicate rows

The macro below deletes rows with repeated values based on selected column. It’s almost the same as filter default option in Microsoft Excel, but using VBA Code. Copy and Paste the code in a new VBA Module. Fill a worksheet with some sample data, of course, with repeated values. Now, type Alt+F8 to activate and run the macro to see the result.

Public Sub ExcluirLinhasDuplicadas()
 
    Dim Col As Integer
    Dim r As Long
    Dim C As Range
    Dim N As Long
    Dim V As Variant
    Dim Rng As Range
 
    On Error GoTo EndMacro
    Application.ScreenUpdating = False
    Application.Calculation = xlCalculationManual
 
    Col = ActiveCell.Column
 
    If Selection.Rows.Count > 1 Then
        Set Rng = Selection
    Else
        Set Rng = ActiveSheet.UsedRange.Rows
    End If
 
    N = 0
    For r = Rng.Rows.Count To 1 Step -1
        V = Rng.Cells(r, 1).Value
        If Application.WorksheetFunction.CountIf(Rng.Columns(1), V) > 1 Then
            Rng.Rows(r).EntireRow.Delete
            N = N + 1
        End If
    Next r
 
EndMacro:
 
    Application.ScreenUpdating = True
    Application.Calculation = xlCalculationAutomatic
 
End Sub

Source:http://vbamacros.blogspot.com/