Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
696to700
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
696to700
696to700
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zeile automatisch einfügen, wenn...

Zeile automatisch einfügen, wenn...
21.11.2005 12:41:35
TSchmidt
Hallo zusammen,
ich habe eine Liste mit Intervallen von 30 Minuten von 8-20 Uhr. In diesen Intervallzeilen steht jeweils, was an Anrufen in dieser Zeit reinkam (Zahlen).
Diese Liste wird automatisch generiert und nach Excel exportiert.
Ist in einem Intervall aber nicht passiert, wird eben diese Intervallzeile ausgelassen, d.h. sie erscheint nicht nach dem Export. Ich suche nun einen VBA-Code, der mir die fehlenden Zeilen automatisch einfügt, sodass ich am Ende die Intervallliste komplett habe...
Vielen Dank im Voraus für Eure Hilfe.

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeile automatisch einfügen, wenn...
21.11.2005 13:26:43
Frank
Hallo TSchmidt,
da Du laut Deiner Aussage kein VBA kannst wäre es sinnvoll, wenn Du eine Mustertabelle (bei der die Zeilen noch fehelen) hochlädst!
Eine Frage vorab, sind wenigstens die Start- und Endezeit in der Tabelle?
Gruß Frank.
AW: Zeile automatisch einfügen, wenn...
21.11.2005 13:33:00
TSchmidt
Hallo Frank,
Start- und Endzeiten stehen drin, eine Beispieltabelle habe ich nun beigefügt:
https://www.herber.de/bbs/user/28573.xls
Gruß, Thorsten
AW: Zeile automatisch einfügen, wenn...
21.11.2005 14:07:28
Frank
Hallo Thorsten,
anbei ein Lösungsvorschlag:

Sub sInsertRows()
Dim ws As Worksheet
Dim intRow As Integer
Dim intStunde As Integer
Dim intMinute As Integer
Set ws = ActiveSheet
intRow = 5
intStunde = 8
intMinute = 0
Do While intStunde < 18
If ws.Cells(intRow, 1) <> TimeSerial(intStunde, intMinute, 0) Then
ws.Range("A" & intRow).EntireRow.Insert
ws.Range("A" & intRow).Value = TimeSerial(intStunde, intMinute, 0)
End If
If intMinute = 0 Then
intMinute = 30
Else
intStunde = intStunde + 1
intMinute = 0
End If
If ws.Range("C" & intRow).Value <> TimeSerial(intStunde, intMinute, 0) Then
ws.Range("C" & intRow).Value = TimeSerial(intStunde, intMinute, 0)
End If
intRow = intRow + 1
Loop
Set ws = Nothing
End Sub

Kopiere die Zeilen in ein neues Modul Deiner Arbeitsmappe.
Viel Spaß
Frank.
Anzeige
AW: Zeile automatisch einfügen, wenn...
21.11.2005 14:25:11
TSchmidt
Hallo Frank,
ich bete Dich an. Es klappt wunderbar, vielen Dank für die schnelle Hilfe.
Allerdings habe ich bemerkt, dass ich etwas vergessen habe, und zwar sollen die leeren Zellen nach dem Einfügen der Zeile gefüllt werden.
Als Muster hier die Tabelle (rote Zeichen). Kann man dies noch anfügen?
Gruß, Thorsten
AW: Zeile automatisch einfügen, wenn...
21.11.2005 15:34:27
Frank
Hallo Thorsten,
vielen Dank für die Blumen. Natürlich kann man die Zeilen füllen, nur Dein Beispiel fehlt!
Gruß Frank.
AW: Zeile automatisch einfügen, wenn...
23.11.2005 07:45:25
TSchmidt
Sorry, war gestern auf Reisen... hier nun das Beispiel.
Ich hoffe, Du hast noch Zeit bzw. findest das hier noch.
https://www.herber.de/bbs/user/28629.xls
Gruß, Thorsten
Anzeige
AW: Zeile automatisch einfügen, wenn...
23.11.2005 09:18:25
Frank
Hallo Thorsten,
anbei der überarbeitete Lösungsvorschlag:

Sub sInsertRows()
Dim ws As Worksheet
Dim intRow As Integer
Dim intStunde As Integer
Dim intMinute As Integer
Set ws = ActiveSheet
intRow = 5
intStunde = 8
intMinute = 0
Do While intStunde < 18
If ws.Cells(intRow, 1) <> TimeSerial(intStunde, intMinute, 0) Then
ws.Range("A" & intRow).EntireRow.Insert
ws.Range("A" & intRow).Value = TimeSerial(intStunde, intMinute, 0)
For intCol = 4 To 16
ws.Cells(intRow, intCol).Value = 0
Next
End If
If intMinute = 0 Then
intMinute = 30
Else
intStunde = intStunde + 1
intMinute = 0
End If
If ws.Range("C" & intRow).Value <> TimeSerial(intStunde, intMinute, 0) Then
ws.Range("C" & intRow).Value = TimeSerial(intStunde, intMinute, 0)
End If
intRow = intRow + 1
Loop
Set ws = Nothing
End Sub

Viel Spaß
Frank.
Anzeige
AW: Zeile automatisch einfügen, wenn...
23.11.2005 09:52:21
TSchmidt
Hallo Frank,
vielen Dank für Deine schnelle Hilfe, allerdings bleiben die Zeilen bei mir leer und füllen sich nicht mit Nullen. Habe es dreimal probiert, weil ich dachte, ich habe etwas falsch gemacht, aber dreimal hat es nicht geklappt. Muss ich etwas besonderes beachten?
Gruß, Thorsten
AW: Zeile automatisch einfügen, wenn...
23.11.2005 11:46:17
Frank
Hallo Thorsten,
bei mir funktioniert es. Falls Du im Modul oben "Option Explicit" hast, dann musst Du noch folgende Zeile in die Prozedur aufnehmen (z.B. unterhalb intRow) "Dim intCol As Integer".
Zum Testen lösche einfach die roten Zeilen aus Deinem Beispiel. Diese werden dann in Schwarz eingefügt. Wenn Du die Zellen noch farbig haben möchtest gebe noch einmal Bescheid!
Gruß Frank.
Anzeige
AW: Zeile automatisch einfügen, wenn...
23.11.2005 11:53:17
TSchmidt
Hallo Frank,
farbis tut nicht Not, schwarz würde vollkommen reichen. Aber auch mit der zusätzlichen Zeile klappt es nicht. Die Uhrzeiten werden aufgefüllt, so wie es sein soll, alle anderen Zellen bleiben aber leider leer... :(
Gruß, Thorsten
AW: Zeile automatisch einfügen, wenn...
23.11.2005 11:53:21
TSchmidt
Hallo Frank,
farbis tut nicht Not, schwarz würde vollkommen reichen. Aber auch mit der zusätzlichen Zeile klappt es nicht. Die Uhrzeiten werden aufgefüllt, so wie es sein soll, alle anderen Zellen bleiben aber leider leer... :(
Gruß, Thorsten
AW: Zeile automatisch einfügen, wenn...
23.11.2005 11:53:31
TSchmidt
Hallo Frank,
farbis tut nicht Not, schwarz würde vollkommen reichen. Aber auch mit der zusätzlichen Zeile klappt es nicht. Die Uhrzeiten werden aufgefüllt, so wie es sein soll, alle anderen Zellen bleiben aber leider leer... :(
Gruß, Thorsten
Anzeige
AW: Zeile automatisch einfügen, wenn...
23.11.2005 16:46:27
Frank
Hallo Thorsten,
lade mir bitte eine Deiner Tabellen inkl. der Makros, bei der das nicht funktioniert, hoch!
Gruß Frank.
AW: Zeile automatisch einfügen, wenn...
24.11.2005 08:59:02
TSchmidt
Hallo Frank,
hat sich erledigt. Hatte die ganze Zeit das falsche Makro zugewiesen.
Natürlich funktioniert Dein Lösungsvorschlag und ich verneige mich in Ehrfurcht.
Vielen Dank!
Gruß, Thorsten

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige