Verschieben von Zellinformation in andere Spalte (per VBA) excel 2010
Hallo,
ich habe folgendes Problem,
ich bekomme Daten welche über eine Webabfrage zur Verfügung gestellt wurde.
Nun ist es so, dass Werte in eine weitere Zeile geschrieben werden, welche ich für eine weitere Verarbeitung aber in die darüber liegende benötigen würde.
Die Tabelle sieht wie folgt aus (Ist Zustand Screenshot)
ich möchte nun erreichen, dass eine Spalte zwischen G&H erzeugt wird und der Wert welcher unterhalb processing since oder pending since steht, nebenan gestellt wird
Gleichzeitig möchte ich erreichen, dass das ausgelesene Datum / Uhrzeit abgeändert wird, so das dieses zu weitere Analyse verwendet werden kann
siehe Soll Zustand Screensot
Wie kann ich dieses am besten per vba realisieren?
Kann mir hier jemand helfen?
ich habe folgendes Problem,
ich bekomme Daten welche über eine Webabfrage zur Verfügung gestellt wurde.
Nun ist es so, dass Werte in eine weitere Zeile geschrieben werden, welche ich für eine weitere Verarbeitung aber in die darüber liegende benötigen würde.
Die Tabelle sieht wie folgt aus (Ist Zustand Screenshot)
ich möchte nun erreichen, dass eine Spalte zwischen G&H erzeugt wird und der Wert welcher unterhalb processing since oder pending since steht, nebenan gestellt wird
Gleichzeitig möchte ich erreichen, dass das ausgelesene Datum / Uhrzeit abgeändert wird, so das dieses zu weitere Analyse verwendet werden kann
siehe Soll Zustand Screensot
Wie kann ich dieses am besten per vba realisieren?
Kann mir hier jemand helfen?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 318392
Url: https://administrator.de/forum/verschieben-von-zellinformation-in-andere-spalte-per-vba-excel-2010-318392.html
Ausgedruckt am: 23.12.2024 um 01:12 Uhr
5 Kommentare
Neuester Kommentar
Sub DoWork()
Dim cell As Range, rngDel As Range, dNew As Variant, m As Integer, i As Integer
Set regex = CreateObject("vbscript.regexp")
arrmonth = Array("Jan", "Feb", "Mar", "Apr", "May", "June", "July", "Aug", "Sept", "Oct", "Nov", "Dec")
regex.IgnoreCase = True
regex.Pattern = "[a-z]+ (\d+) ([a-z]+) (\d{4}) (\d{2}\:\d{2}\:\d{2}) (AM|PM)"
With ActiveSheet
'Neue Spalte erstellen
.Range("G:G").EntireColumn.Insert Shift:=xlToRight
'Datumszellen in Spalte F verarbeiten
For Each cell In .Range("F2:F" & .Cells(Rows.Count, "F").End(xlUp).Row)
'Teste ob Zelle dem Muster entspricht
Set matches = regex.Execute(cell.Value)
If matches.Count > 0 Then
'Monat als Zahl ermitteln
m = 0
For i = 0 To UBound(arrmonth)
If UCase(matches(0).Submatches(1)) = UCase(arrmonth(i)) Then
m = i + 1
Exit For
End If
Next
'Umgewandelte Zeit in Zelle eintragen
cell.Offset(-1, 1).Value = CDate(matches(0).Submatches(0) & "." & m & "." & matches(0).Submatches(2) & " " & matches(0).Submatches(3) & " " & matches(0).Submatches(4))
'zu löschende Zeile sichern
If Not rngDel Is Nothing Then
Set rngDel = Union(rngDel, cell.EntireRow)
Else
Set rngDel = cell.EntireRow
End If
End If
Next
'zu löschende Zeilen löschen
If Not rngDel Is Nothing Then
rngDel.Delete
End If
End With
End Sub
War nur ein Tippfehler. Eine Zahl in Zeile 26 geändert.