In meiner Arbeit mit Excel stieß ich oft auf Herausforderungen beim Import von Daten aus verschiedenen Quellen wie CSV-Dateien. Häufig werden dabei Daten in einem unerwünschten Format importiert, was zu Problemen bei der nachfolgenden Datenverarbeitung führt. Ein klassisches Beispiel ist die Behandlung leerer Zellen, die als leere Strings (“”) anstatt als Empty
importiert werden, was die Rechenoperationen beeinträchtigen kann.
Funktion zur Ermittlung des Datentyps
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
' Funktion zur Bestimmung des Datentyps einer Zelle | |
Public Function ErmittleDatentyp(myCell As Range) As String | |
' Gibt den Datentyp des Zellwerts zurück | |
ErmittleDatentyp = TypeName(myCell.Value) | |
End Function |
Funktion zur Korrektur leerer String-Zellen
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
' Prozedur zum Konvertieren leerer String-Zellen in Empty | |
Public Sub ConvertEmptyCells() | |
Dim myRange As Range | |
' Durchläuft alle Zellen im genutzten Bereich des aktiven Blatts | |
For Each myRange In ActiveSheet.UsedRange | |
' Überprüft, ob der Zellinhalt ein leerer String ist | |
If TypeName(myRange.Value) = "String" Then | |
If Len(myRange.Value) = 0 Then | |
myRange.Clear ' Setzt die Zelle auf Empty | |
End If | |
End If | |
Next | |
End Sub |
Funktion zur Konvertierung von Importfehlern
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
' Funktion zur Korrektur verschiedener Importfehler | |
Public Sub ConvertImportErrors() | |
Dim myRange As Range | |
' Durchläuft alle Zellen im genutzten Bereich des aktiven Blatts | |
For Each myRange In ActiveSheet.UsedRange | |
' Überprüft den Zelltyp und korrigiert ggf. den Wert | |
If TypeName(myRange.Value) = "String" Then | |
If Len(myRange.Value) = 0 Then | |
myRange.Clear ' Leere Strings werden entfernt | |
ElseIf IsNumeric(myRange.Value) Then | |
myRange.Value = CDbl(myRange.Value) ' Konvertiert numerische Strings in Double | |
End If | |
End If | |
Next | |
End Sub |
Kurzbeschreibung der Codes:
ErmittleDatentyp
: Gibt den Datentyp einer Zelle zurück, was bei der Analyse von Importdaten hilfreich sein kann.ConvertEmptyCells
: Durchsucht alle Zellen im genutzten Bereich und konvertiert leere Strings inEmpty
, um eine korrekte Datenverarbeitung zu gewährleisten.ConvertImportErrors
: Erweitert die Funktionalität der vorherigen Prozedur, indem sie nicht nur leere Strings behandelt, sondern auch numerische Werte, die fälschlicherweise als String importiert wurden, in numerische Datentypen konvertiert.
Diese Funktionen sind besonders nützlich, um häufige Probleme beim Import von Daten aus externen Quellen zu lösen. Sie helfen dabei, die Datenqualität sicherzustellen und die Effizienz der nachfolgenden Datenverarbeitung in Excel zu erhöhen.