Anzeige
Archiv - Navigation
1344to1348
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
Inhaltsverzeichnis

suchen, kopieren, weitersuchen

suchen, kopieren, weitersuchen
26.01.2014 22:27:05
Michael
Hallo Forum,
versuche mal eine Beschreibung meines Problem und ich hoffe Ihr könnt mir weiterhelfen.
Habe eine Exceldatei mir mehreren Tabellenblättern.
Beipiel:
TabEingabe, Zelle C7, Eingabe des zu suchenden Datum, Enter und suche soll starten auf allen Tabellenblättern der Arbeitsmappe.
Datum wird gefunden in der Zelle I5 der TabAugust.
Nun soll in den Zellen darunter ab I9:I30, Werte gesucht werden, wie z.B.: F, S, N usw. Wenn diese Werte gefuden werden, dann in der Fundzeile die Zelle A? kopieren und auf ein neues Tab untereinander kopiert werden. Weitersuchen und ggf. kopieren.
Falls mit meiner Bechreibung keiner etwas anfangen kann, lade ich meine Datei noch hoch.
Danke und Gruß
Michael

15
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: suchen, kopieren, weitersuchen
27.01.2014 02:15:44
Raphael
Hallo Michael,
ich würde die von dir erwähnte Datei mal hochladen, allenfalls wird dir dann geholfen.
Suchen, finden, kopieren ist machbar, die Frage ist wie soll das Ergebnis aussehen.
Gruess
Raphael

AW: suchen, kopieren, weitersuchen
27.01.2014 09:33:03
Raphael
Morgen Michael,
danke für die Mustermappe, aber ich checks noch immer nicht.
Ich habe auf der Mappe 1 Monat (August), gemäss deiner ersten Beschreibung wird ein Datum eingegeben und dann sollen alle Sheets durchsucht werden. Wie sehen die Sheets aus, wie heissen die, wie ist die Struktur.....
Wo wird das Suchdatum eingegeben?
Gruess
Raphael

Anzeige
Warum suchen?
27.01.2014 10:33:09
Erich
Hi Michael,
so ganz verstehe auch ich deine Frage nicht.
Wenn in TabEingabe!C7 als Datum der 11.07.2014 eingegeben wird, ist es dann sinnvoll,
dieses Datum in allen Blättern zu suchen, also auch im TabMai? Ist nicht klar, dass das Datum in TabJuli steht?
Wenn schon zu suchen ist - steht das Datum nicht immer in Zeile 5 (und 6)? Dann mauss man auch nur dort suchen...
Aber steht nicht auch die Spalte, in der das Datum steht, schon fest? Der 11. steht bei deinem Tabellenaufbau in Zeile 5 (und 6) und Spalte N, das ist Spalte = TAG(Datum)+3 = 14. Spalte.
Stellt sich die Frage: Wozu ist diese Sucherei gut?
Oder ist deine Datenstruktur anders als hier am Beispiel gezeigt?
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich

Anzeige
AW: Warum suchen?
27.01.2014 11:00:53
Michael
Hallo,
das Tab-Blatt welches ich hochgeladen habe ist nur eines von 12.
Eben eins für jeden Monat. Der Aufbau der Tabellen ist immer gleich.
Die Tabelle in der das Datum das gesucht wird habe ich nicht mit hochgeladen.
In diesem Blatt soll in eine Zelle zB C7 das gesuchte Datum eingegeben werden, dann mit Enter auf den Blättern nach diesem Datum gesucht werden.
Danach soll in den Zellen darunter, bei allen Zellen die ein F, oder ein S, oder ein N, oder oder usw. haben, soll der Inhalt von den Zelle A9:A in ein extra Blatt nacheinander kopiert werden. Das ganze soll dienen als Tagesauswertung. Das ist erstmal der Anfang, das ganze soll dann noch weiter ausgebaut werden. Danke schonmal für Eure Bereitschaft sich der Sache anzunehmen. Gruß Michael

Anzeige
AW: Warum suchen?
27.01.2014 11:06:01
Michael
Mit diesem Code funktioniert schonmal die Suche. Möchte es aber ohne die MsgBox und die weiter suche ist auch nicht nötig. Auf jeden Fall wird so schonmal das gesuchte Datum auf dem TabBlatt aktiviert.
Von dort aus sollte jetzt noch der Vergleich und das kopieren stattfinden.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim n As Integer
Dim r As Range
Dim s As Boolean
Dim x As String
If Target.Address(0, 0) = "C7:D7" Then
s = False
Do
x = LCase(InputBox("Bitte ein Datum eingeben", "Suche"))
If x = "" Then Exit Sub
For n = 1 To ThisWorkbook.Worksheets.Count
For Each r In ActiveWorkbook.Worksheets(n).UsedRange
If LCase(r.Value) Like "*" & x & "*" Then
s = True
ActiveWorkbook.Worksheets(n).Visible = True
Application.Goto r
If MsgBox("Weitersuchen?", vbYesNo, "Suche") = vbNo Then Exit Sub
End If
Next r
Next n
If s = False Then
MsgBox "Es wurden keine Übereinstimmungen gefunden!", , "Information"
End If
Loop
End If
End Sub

Anzeige
Warum suchen?
27.01.2014 12:37:06
Erich
Hi Michael,
in meinem vorigen Beitrag habe ich dir einige Fragen gestellt, und der Betreff war auch schon "Warum suchen?".
1.
Wenn in TabEingabe!C7 als Datum der 11.07.2014 eingegeben wird, ist es dann sinnvoll,
dieses Datum in allen Blättern zu suchen, also auch im TabMai?
Ist nicht klar, dass das Datum in TabJuli steht?
2.
Wenn schon zu suchen ist - steht das Datum nicht immer in Zeile 5 (und 6)?
3.
steht nicht auch die Spalte, in der das Datum steht, schon fest? Der 11. steht bei deinem Tabellenaufbau in Zeile 5 (und 6) und Spalte N, das ist Spalte = TAG(Datum)+3 = 14. Spalte.
4. (zusammenfassend)
Stellt sich die Frage: Wozu ist diese Sucherei gut?
5.
Oder ist deine Datenstruktur anders als hier am Beispiel gezeigt?
Frage 5 hast du beantwortet, auf die Fragen 1 bis 4 bist du einfach nicht eingegangen.
So klappt das nicht mit der Zusammenarbeit... :-(
Weitere Fragen:
6.
Wenn in der Spalte mit dem richtigen Datum der Text SF oder DF oder SENF steht, soll auch dann
der Wert aus Spalte A in das Auswertungsblatt kopiert werden, evtl. auch mehrfach?
7.
In deinem 1. Post steht, dass die Einträge in den Zeilen 9:30 gesucht werden sollen.
In deinem Beipsielblatt sind die Zeilen 9:60 vorgesehen. Was gilt?
8.
Bei einer Suche ist festzulegen, ob Groß-/Kleinschreibung eine Rolle spielt. Wie soll das in diesem Falle sein?
Noch eine Bemerkung:
Wenn du hier eine Mappe hochlädst, sollte sie keine Verknüpfungen anderen Mappen auf deinem Rechner haben.
Hier ist es die "Test_Plan.xlsm". So etwes stört nur.
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich

Anzeige
AW: Warum suchen?
27.01.2014 13:09:09
Michael
1.
Wenn in TabEingabe!C7 als Datum der 11.07.2014 eingegeben wird, ist es dann sinnvoll,
dieses Datum in allen Blättern zu suchen, also auch im TabMai?
Ist nicht klar, dass das Datum in TabJuli steht?
wenn das auch ohne suchen funktioniert und die Zelle auf der Seite auch so aktiviert ist es kein Problem. Es geht mit bei der Sache ja auch viel mehr um das anschließende.
2.
Wenn schon zu suchen ist - steht das Datum nicht immer in Zeile 5 (und 6)?
gleicher Aufbau aller Monatstabellenblätter
3.
steht nicht auch die Spalte, in der das Datum steht, schon fest? Der 11. steht bei deinem Tabellenaufbau in Zeile 5 (und 6) und Spalte N, das ist Spalte = TAG(Datum)+3 = 14. Spalte.
Wenn das so ist. Ok.
4. (zusammenfassend)
Stellt sich die Frage: Wozu ist diese Sucherei gut?
nochmal wenn keine Suche gebraucht wird und Excel weiß, wenn ich in C7 ein Datum eingebe, dann auch die richtige Zelle gefunden wird, also auch ohne Suche machbar. Habe ich verstanden.
5.
Oder ist deine Datenstruktur anders als hier am Beispiel gezeigt?
nein, Aufbau aller Monate der gleiche
Weitere Fragen:
6.
Wenn in der Spalte mit dem richtigen Datum der Text SF oder DF oder SENF steht, soll auch dann
der Wert aus Spalte A in das Auswertungsblatt kopiert werden, evtl. auch mehrfach?
Bedingung primär sind die Werte F,S,N, Alt/F, Alt/S, diese untereinander in ein neues Tabellenblatt. Alle anderen hier nicht genannten, wenn möglich auch auf das Tabellenblatt nur nicht direkt unter die primären.
7.
In deinem 1. Post steht, dass die Einträge in den Zeilen 9:30 gesucht werden sollen.
In deinem Beipsielblatt sind die Zeilen 9:60 vorgesehen. Was gilt?
in den Zellen von Beginn des Monats, also zB.: 01. bis Ende des Monats zB.: 28/29/30/31
8.
Bei einer Suche ist festzulegen, ob Groß-/Kleinschreibung eine Rolle spielt. Wie soll das in diesem Falle sein?
Großschreibung
Noch eine Bemerkung:
Wenn du hier eine Mappe hochlädst, sollte sie keine Verknüpfungen anderen Mappen auf deinem Rechner haben.
Hier ist es die "Test_Plan.xlsm". So etwes stört nur.
Da ich das erste Mal eine Mappe hochgeladen habe, hatte ich noch keine Erfahrung wie das ganze funktioniert, Sorry.
Gruß Michael

Anzeige
ist schon schwer...
27.01.2014 21:02:37
Erich
Hi Michael,
ein Beitrag, der mit einem "Hallo" oder einer anderen Anrede beginnt, wirkt freundlicher... :-)
Zu Frage 7:
In der Frage geht es um die Zeilen 9:30 oder 9:60. Deine Antwort hat wohl mit den Spalten D:AE bis D:AH zu tun,
in denen die Tage des Monat stehen. Ist wohl ein Missverständnis.
Zu Frage 8:
Meine Frage war, wie bei der Auswahl der Einträge die Groß-/Kleinschreibung berücksichtigt werden soll.
Beispiel: Wenn F (was wohl für Frühschicht steht) abgefragt wird - muss dann genau F in der Zelle stehen,
oder soll auch ein kleines f als Treffer gelten? (Dann spielte hier Groß-/Kleinschreibung keine Rolle.)
Was sollte mir deine Antwort "Großschreibung" sagen?
Zur Bemerkung "Verknüpfungen":
Das hat nun nichts mit dem Hochladen hier im Forum zu tun.
Wenn man jemand anderem eine Mappe zur Verfügung stellt (per USB-Stick, per Mail, per Hochladen in ein Forum, ...),
erzeugen solche Verknüpfungen Warnhinweise oder Fehlermeldungen.
Das kann man als Absender leicht vermeiden.
Probier mal diesen Code:

Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim wsMon As Worksheet, lngC As Long, arD, arA, qq As Long
Dim arE() As String, arF() As String, ee As Long, ff As Long
Dim arErg() As String
If Not Target.Address(0, 0) = "C7" Then Exit Sub
If Not IsDate(Target) Then MsgBox "Kein Datum - Abbruch": Exit Sub
Set wsMon = Sheets(Format(Target, "mmmm"))   ' Tabellenblatt mit dem Monat
lngC = Day(Target) + 3                       ' Spalte mit dem Tag
MsgBox "Das eingegebene Datum steht in Blatt '" & wsMon.Name _
& "' in Zelle " & Cells(5, lngC).Address
arD = wsMon.Cells(9, lngC).Resize(52)        ' Werte Spalte des Tages
arA = wsMon.Cells(9, 1).Resize(52)           ' Werte Spalte A
ReDim arE(1 To UBound(arD))
ReDim arF(1 To UBound(arD))
For qq = 1 To UBound(arD)
Select Case arD(qq, 1)
Case ""                                ' leer
Case "F", "S", "N", "Alt/F", "Alt/S"   ' "Bedingung primär"
ee = ee + 1
arE(ee) = arA(qq, 1)
Case Else                              ' Alle anderen
ff = ff + 1
arF(ff) = arA(qq, 1)
End Select
Next qq
Sheets.Add                                   ' neues Tabellenblatt
With ActiveSheet
.Cells(1, 1).Resize(ee) = Application.Transpose(arE)  ' primäre
.Cells(3, 3).Resize(ff) = Application.Transpose(arF)  ' andere
End With
Me.Activate             ' falls Blatt TabEingabe aktiv sein soll
End Sub
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich

Anzeige
AW: ist schon schwer...
28.01.2014 01:40:31
Michael
Hallo Erich :-)
Besten Dank für Deine Arbeit mit mir... war nicht so einfach :-(.
Zu deinem Code, der macht was er soll und dafür auch nochmal besten Dank.
Auch wenn ich nerve, hätte ich dazu noch Fragen ob eventuell ein, oder zwei Anpassungen, die mir jetzt erst aufgefallen sind machbar sind?
1. Wäre es möglich nicht eine "neue" Tabelle (Sheets.Add ' neues Tabellenblatt) zu erstellen, sondern eventuell ein bestehendes Tabellenblatt (Beispielname "Vorlage") dafür zu nehmen?
2. zu den Werten die in dem "neuen" Tabellenblatt in die Spalte A kopiert werden vielleicht auch noch den passenden Case-Wert (also entweder "F", "S", "N" usw. dazu in Spalte B? das ganze auch für die "anderen" in der Spalte daneben?
zu deiner Frage 7: es werden max. 60 Zeilen benötigt.
Frage 8: es wird normalerweise die Eintragungen in Großschrift getätigt... Also F nicht f
zu Verknüpfungen in der Mappe. War keine Absicht. Habe das Tab aus einer Mappe in eine leere Mappe kopiert und nicht auf die Verknüpfungen geachtet. Nochmals sorry, werde mich anstrengen und das verbessern.
Vielen Dank und Gruß aus Hannover Michael

Anzeige
doch noch Fragen
28.01.2014 10:13:09
Erich
Hi Michael,
kein Problem! :-)
Deine Antworten werden z. T. neue Fragen auf:
zu 1.: Bei Benutzung eines vorhandenen Blatts für die Ausgabe stellen sich gleich wieder zwei Fragen:
1a) Kann sich das Programm darauf verlassen, dass das Blatt "Vorlage" existiert?
Oder muss das geprüft und das Blatt nötigenfalls neu erstellt werden?
1b) Im Blatt "Vorlage" können Daten stehen, die durch die Ausgabe (evtl. teilweise) überschrieben werden.
Danach ist evtl. nicht zu sehen, was vorher schon im Blatt stand und was neu ausgegeben wurde.
Sollen vielleicht alle Alt-Daten auf Blatt "Vorlage" vor der Ausgabe gelöscht werden?
zu "es werden max. 60 Zeilen benötigt.": Du meinst die 52 Zeilen von 9 bis 60, oder?
zu Frage 8:
Ein Programm schreibt man nicht nur für "normalerweise". Menschen machen Fehler. Maschinen auch.
Fehler passieren bei der Dateneingabe, beim Einrichten einer Gültigkeitsprüfung, beim Programmieren, ...
Was absehbar ist, sollte möglichst sinnvoll geregelt werden.
Also noch einmal: Was soll geschehen, wenn f statt F eingegeben wird? "Also F nicht f" beantwortet die Frage nicht.
(Nebenbei: Hast du mal ausprobiert, was die derzeitige Version des Programms bei Kleinschreibung tut?)
zu Verknüpfungen: Das war ja auch nur eine kleine Bemerkung meinerseits. :-)
Und zum Testen:

Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim wsMon As Worksheet, lngC As Long, arD, arA, qq As Long
Dim arE() As String, arF() As String, ee As Long, ff As Long
Dim arErg() As String
If Not Target.Address(0, 0) = "C7" Then Exit Sub
If Not IsDate(Target) Then MsgBox "Kein Datum - Abbruch": Exit Sub
Set wsMon = Sheets(Format(Target, "mmmm"))   ' Tabellenblatt mit dem Monat
lngC = Day(Target) + 3                       ' Spalte mit dem Tag
'  MsgBox "Das eingegebene Datum steht in Blatt '" & wsMon.Name _
& "' in Zelle " & Cells(5, lngC).Address
arD = wsMon.Cells(9, lngC).Resize(52)        ' Werte Spalte des Tages
arA = wsMon.Cells(9, 1).Resize(52)           ' Werte Spalte A
ReDim arE(1 To UBound(arD), 1)
ReDim arF(1 To UBound(arD), 1)
For qq = 1 To UBound(arD)
Select Case arD(qq, 1)
Case ""                                ' leer
Case "F", "S", "N", "Alt/F", "Alt/S"   ' "Bedingung primär"
ee = ee + 1
arE(ee, 0) = arA(qq, 1)
arE(ee, 1) = arD(qq, 1)
Case Else                              ' Alle anderen
ff = ff + 1
arF(ff, 0) = arA(qq, 1)
arF(ff, 1) = arD(qq, 1)
End Select
Next qq
With Sheets("Vorlage")     ' Ausgabe in Blatt "Vorlage" - muss existieren
.Cells(1, 1).Resize(ee, 2) = arE    ' primäre
.Cells(3, 4).Resize(ff, 2) = arF    ' andere
End With
'  Me.Activate             ' falls Blatt TabEingabe aktiv sein soll
End Sub
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich

Anzeige
AW: doch noch Fragen
28.01.2014 11:00:39
Michael
Hallo Erich,
zu 1.: die Seite ist angelegt und existiert auch
1b) eine vorherige Löschung, falls noch da Daten auf der "Vorlage" stehen, wäre angebracht
zu "es werden max. 60 Zeilen benötigt.": Du meinst die 52 Zeilen von 9 bis 60, oder?
ja das meinte ich
zu Frage 8:
hast du natürlich Recht. Aber wenn das zB das F, so sollte es sein, immer in Großschreibung eingetragen werden muss, muss dann diese Prüfung nicht schon stattfinden bei der Eintragung in der Monatsübersicht?
Ich habe es nocht nicht getestet was dein Programm macht, wenn ich f statt F eingebe.
Danke und Gruß
Michael

Ergänzung
28.01.2014 11:22:51
Erich
Hi Michael,
da ist jetzt wohl nur noch die Löschung der alten Einträge offen.
Dazu brauchst du nur eine Zeile zu ergänzen, ziemlich unten im Code:

With Sheets("Vorlage")     ' Ausgabe in Blatt "Vorlage" - muss existieren
.Cells.ClearContents                         ' ### neu
.Cells(1, 1).Resize(ee, 2) = arE    ' primäre
.Cells(3, 4).Resize(ff, 2) = arF    ' andere
End With
Die Eingabeprüfung sollte natürlich möglichst frühzeitig stattfinden, bei der Eintragung in der Monatsübersicht.
Trotzdem: Der Programmierer muss entscheiden, was das Programm wann tun soll,
er sollte das nicht dem Zufall überlassen. Zumindest solltest du wissen, was im Falle eines Falles geschieht.
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich

Danke
29.01.2014 17:04:25
Michael
Hallo Erich,
hat alles gut geklappt und es funktioniert alles :-)
Das mit der f/F (klein/ Großschreibung) habe ich so gelöst:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells.Count > 1 Then Exit Sub
If Intersect(Target, Me.Range("D9:AH30")) Is Nothing Then Exit Sub
On Error GoTo CleanUp:
With Target
If .Value  "" Then
Application.EnableEvents = False
.Value = UCase(.Value)
End If
End With
CleanUp:
Application.EnableEvents = True
End Sub
Jetzt wird in dem Bereich automatisch auf Großschreibung gesetzt :-).
Aber leider ist es so wie es immer ist, kaum hat man ein Problem gelöst, oder besser Du, schon gibt es das nächste :-(.
In den einzelnen Zellen werden die Dienste eingetragen, F oder S oder N usw...
Das stellt ja kein Problem da, aber das Problem ist das bei einigen die Anfangs-/ und Endzeiten unterschiedlich sind. Wollte das Problem lösen in dem ich unter jeder Zeile noch zwei Zeilen einfüge, und in diese dann Anfangs- Endzeit eintrage. Doch nun ist es ja so das dein Code jede Zeile/ Spalte ausliest und im Blatt "Vorlage") dieses schön untereinander einträgt. Die Zeiten werden dann unter 'andere eingetragen. Kann das Problem gelöst werden, so das die Zeiten neben dem Namen aus Spalte A stehen?
Habe nochmal die Tabelle mit hochgeladen mit den Zeilen die ich eingefügt habe, damit du siehst was ich meine.
:-(( Gruß Michael
https://www.herber.de/bbs/user/89022.xlsx

Tabellenaufbau
29.01.2014 19:38:28
Erich
Hi Michael,
diese Vermengung von Schichtarten und Uhrzeiten in einer Spalte ist vielleicht nicht so glücklich.
Hast du mal probiert, was deine automatisc he Großschreibung mit einer eingegebenen Uhrzeit macht?
Da kannst du die Zelle als Uhrzeit formatieren oder nicht - UCase(...) ist Text, also steht nachher
Test in der Zelle, auch wenn er wie eine Zahl aussieht.
Da ich deine Aufgabenstellung nicht kenne, kann ich das natürlich nicht wirklich beurteilen.
Aber nach allen Erfahrungen erscheint mir dein Tabellenaufbau unnötig verkompliziert.
Oft bietet es sich an, Daten möglichst einfach und arbeitssparend zu erfassen.
Auch die spätere Auswertung der Daten ist dann einfacher.
Eine Erfassungstabelle könnte z. B. so aussehen:
 ABCDEFG
1NameDatumPlanprim/andSchichtvonbis
2Fritz05.03.2014TPT1  
3Hans07.03.2014NPAlt/F13:0017:00
4Otto07.03.2014NADA  

Die Daten in den Spalten C und D müssen vermutlich gar nicht eingegeben werden, sie können wohl per Formel
oder Programm ermittelt werden (aus Datum und Schicht).
Spalte C entspricht deiner bisherigen Zeile 7. Ist das so eine nur vom Datum abhängende "Plan-Schicht"?
Oder was hat sie zu tun mit dem, was darunter in den Zeilen 9:60 eingegeben wird?
"prim/and" steht für "primäre Bedingung" und "andere" - ist für evtl. spätere Auswertung.
Sicher fehlen hier noch einige Daten, aber das Ganze ist ja ausbaufähig.
Trotz alledem habe ich mich mal drangesetzt, die Uhrzeiten nach derzeitigem Stand in "Vorlage" zu übertragen.
Das war nicht ganz trivial, da sich eine Uhrzeit zu einem "prim" oder einem "anderen" gehören kann.
Probier mal

Private Sub Worksheet_Change(ByVal Target As Range)
Dim wsMon As Worksheet, lngC As Long, arD, arA, qq As Long
Dim arE(), arF(), ee As Long, ff As Long, bolPr As Boolean
If Not Target.Address(0, 0) = "C7" Then Exit Sub
If Not IsDate(Target) Then MsgBox "Kein Datum - Abbruch": Exit Sub
Set wsMon = Sheets(Format(Target, "mmmm"))   ' Tabellenblatt mit dem Monat
lngC = Day(Target) + 3                       ' Spalte mit dem Tag
arD = wsMon.Cells(9, lngC).Resize(52)        ' Werte Spalte des Tages
arA = wsMon.Cells(9, 1).Resize(52)           ' Werte Spalte A
ReDim arE(1 To UBound(arD), 3)
ReDim arF(1 To UBound(arD), 3)
For qq = 1 To UBound(arD)
Select Case arD(qq, 1)
Case ""                                ' leer
Case "F", "S", "N", "Alt/F", "Alt/S"   ' "Bedingung primär"
ee = ee + 1
arE(ee, 0) = arA(qq, 1)
arE(ee, 3) = arD(qq, 1)
bolPr = True
Case Else
If IsEmpty(arA(qq, 1)) And IsNumeric(arD(qq, 1)) Then
If bolPr Then
arE(ee, 1) = arD(qq, 1)          ' Uhrzeit
Else
arF(ff, 1) = arD(qq, 1)          ' Uhrzeit
End If
If qq 
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige