Bereich mit Makro glätten

Man kann die Funktion =Glätten() auch über ein Makro ausführen lassen.
Das Makro dazu:

Sub GlaettenTabelle1()
    Dim rC As Range
    Sheets("Tabelle1").Select
    Application.ScreenUpdating = False
    For Each rC In ActiveSheet.Range("F12:N1000")
        If Not (rC.HasFormula) Then rC = Trim(rC)
    Next
    
End Sub

Es wird der Bereich F12:N1000 in der Tabelle1 geglättet.

Die Funktion kann genutzt werden, wenn man z.B. Werte von einer Excel-Arbeitsmappe in die andere kopiert und die dortgen Formeln nicht mehr funktionieren. Ich hatte das Problem mit der Formel =ANZAHL(). Obwohl keine Werte in Zellen geschrieben waren, wurde die Zelle als befüllt erkannt. Die Formel zählte die “leere” Zelle mit. Mit dem Glätten-Makro wurde das Problem schnell und einfach gelöst.

Möchte man die letzte beschriebene Zeile dynamisch bestimmen lassen, dann muss man das Makro anpassen und mehrere kleine Makros berücksichtigen

Sub GlaettenTabelle1()
    Dim rC As Range
    Dim loletzte As Long
    
    Application.ScreenUpdating = False
    Sheets("Tabelle1").Select
    
    loletzte = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row
    
        For Each rC In ActiveSheet.Range("B12:n" & letzte)
        If Not (rC.HasFormula) Then rC = Trim(rC)
    Next
       
End Sub

Bestseller Nr. 1
Excel 2019 - Das umfassende Kompendium. Komplett in Farbe. Grundlagen, Praxis, Formeln, VBA, Diagramme und viele praktische Beispiele: Auch für Office 365
  • Ignatz, Schels (Autor)
  • 704 Seiten - 12.07.2019 (Veröffentlichungsdatum) - Markt + Technik Verlag (Herausgeber)

(**) Produktpreise und -verfügbarkeit sind zum angegebenen Datum / Uhrzeit korrekt und können sich ändern. Alle Preis- und Verfügbarkeitsinformationen auf https://www.amazon.de/ zum Zeitpunkt des Kaufs gelten für den Kauf dieses Produkts.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.