Hallo,
ich habe ein Problem mit den Zellinhalten. Die Excel Datenblätter wurden aus einem PDF heraus konvertiert. Excel erkennt die Zellinhalte nicht, hier habe ich recherchiert und bin fündig geworden. Mittels der Funktion "Text in Spalten" lassen sich die Inhalte von Excel verarbeiten. Das Problem ist jedoch das Text in Spalten nur auf einem Arbeitsblatt mit einer Spalte funktioniert. Da ich jedoch 281 Arbeitsblätter a 12 Spalten habe könnte das etwas länger dauern...
Ich habe dafür einen VBA Code gefunden der das auch einigermaßen gut macht:
Option Explicit
Public Sub TextInSpalten_Workbook()
Dim wsh As Worksheet
For Each wsh In ActiveWorkbook.Worksheets
TextInSpalten_Worksheet wsh
Next wsh
End Sub
Private Sub TextInSpalten_Worksheet(oWorksheet As Worksheet)
With oWorksheet
.Activate
.Columns("A:A").Select
On Error Resume Next
Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=False, Comma:=True, Space:=False, Other:=False, FieldInfo _
:=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1))
On Error GoTo 0
.Range("A1").Select
End With
End Sub
... leider kann ich den Code nicht ganz nach vollziehen. Beim ausführen klappt das auch dass er alle Blätter in Spalte A bearbeitet. Bei dem Versuch den Code so anzupassen dass er alle Spalten anpasst bin ich leider gescheitert. Hier mein Versuch:
Option Explicit
Public Sub TextInSpalten_Workbook()
Dim wsh As Worksheet
For Each wsh In ActiveWorkbook.Worksheets
TextInSpalten_Worksheet wsh
Next wsh
End Sub
Private Sub TextInSpalten_Worksheet(oWorksheet As Worksheet)
Dim Zähler
For Zähler = 1 To 18
With oWorksheet
.Activate
'.Columns("A:A").Select
.Range(Columns(Zähler), Columns(Zähler)).Select
On Error Resume Next
Selection.TextToColumns Destination:=Range(Cells(1, Zähler)), DataType:=xlDelimited, _
_
_
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=False, Comma:=True, Space:=False, Other:=False, FieldInfo _
:=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1))
On Error GoTo 0
.Cells(1, Zähler).Select
End With
Next
End Sub
Bin für jeden Tipp dankbar der mir hier weiterhilft
Beste Grüße