Herbers Excel-Forum - das Archiv
bestimmten Range Zeitabhängig auslesen
Betrifft: bestimmten Range Zeitabhängig auslesen
von: Joachim Volker
Geschrieben am: 08.10.2003 14:12:15
Hallo Leute
Ich hätte wieder mal eine Frage,Bitte
Wie schaffe ich es, damit beim öffnen einer Arbeitsmappe
mit zwei Tabellen "Tabelle1" und "Tabelle2"
Abhängig vom Systemdaum eine bestimmte Zeile in Tabelle1 angezeigt wird.
Beispiel:
In Tabelle2 befinden sich in Range("A2:E15")bestimmte Zeitwerte.
Sollte das Tagesdatum (Systemdatum) in einem Bereich aus z.B
A13:B13 fallen, sollte die ganze Zeile in diesem Fall Zeile 13
Range("A12:E12") in Tabelle1 Range("B2:F2") angezeigt werden.
Danke für die Mühe
Joachim Volker
Die Datei https://www.herber.de/bbs/user/1329.xls wurde aus Datenschutzgründen gelöscht
Betrifft: AW: bestimmten Range Zeitabhängig auslesen
von: ChrisL
Geschrieben am: 08.10.2003 17:25:53
Hi Joachim
Siehe Anhang...
https://www.herber.de/bbs/user/1340.xls
Option Explicit
Sub Abgleich()
Dim WS1 As Worksheet, WS2 As Worksheet
Dim iZeile As Long
Set WS1 = Worksheets("Tabelle1")
Set WS2 = Worksheets("Tabelle2")
WS2.Range("B2:F2").ClearContents
For iZeile = 2 To WS2.Range("A65536").End(xlUp).Row
If WS2.Cells(iZeile, 1) <= Date And WS2.Cells(iZeile, 2) >= Date Then
WS1.Range("B2:F2") = WS2.Range("A" & iZeile & ":E" & iZeile).Value
Exit For
End If
Next iZeile
End Sub
Gruss
Chris
Betrifft: AW: Spitze
von: Joachim Volker
Geschrieben am: 08.10.2003 18:46:07
Hallo Chris
SUPER !!!! FUNKTIONIERT WIE ES SEIN SOLL ...
VIELEN DANK FÜR DIE HILFE
PS:EINE FRAGE NOCH FALLS DU GERADE ONLINE BIST
In meiner Lokalen Tabelle macht er trotz Format-Einstellung auf Datum
ein falschen Datumsformat beim abfragen.
[ 10.08.2003 10/14/2003 01.07.1900 10/23/2003 10/31/2003]
siehe 2.- 4. und 5. Spalte ...
Betrifft: AW: Spitze
von: ChrisL
Geschrieben am: 09.10.2003 19:32:21
Hi Joachim
Versuchs mal hiermit...
Option Explicit
Sub Abgleich()
Dim WS1 As Worksheet, WS2 As Worksheet
Dim iZeile As Long
Set WS1 = Worksheets("Tabelle1")
Set WS2 = Worksheets("Tabelle2")
WS2.Range("B2:F2").ClearContents
For iZeile = 2 To WS2.Range("A65536").End(xlUp).Row
If WS2.Cells(iZeile, 1) <= Date And WS2.Cells(iZeile, 2) >= Date Then
WS1.Range("B2") = CDate(WS2.Range("A" & iZeile))
WS1.Range("C2") = CDate(WS2.Range("B" & iZeile))
WS1.Range("D2") = Format(WS2.Range("C" & iZeile), "00")
WS1.Range("E2") = CDate(WS2.Range("D" & iZeile))
WS1.Range("F2") = CDate(WS2.Range("E" & iZeile))
Exit For
End If
Next iZeile
End Sub
Sorry war den ganzen Tag an einer 'Konferenz'. Wie ging das noch gleich... 'A meeting is a place where minutes are taken and hours are lost.'
Viel Spass... tschüss
Chris
Betrifft: AW: Spitze
von: JoachimVolker
Geschrieben am: 10.10.2003 22:00:04
Hallo Chris
Danke ...kann dir erst am Samstag Rückmeldung geben ob es funktioniert hat.
JoachimVolker