Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Schleife

Forumthread: Schleife

Schleife
25.10.2004 14:59:18
Soniqe
Hallo,
Um "Termine" aus einer DB zu auszulesen verwende ich folgenden code:
##########################################################################

Function Montag()
On Error Resume Next
Dim cn As New ADODB.Connection, rs As New ADODB.Recordset
Dim sSql As String
Dim SuchDatum As String
cn.Provider = "Microsoft.Jet.OLEDB.4.0"
cn.ConnectionString = "M:\Themen\PROJEKT\Organizer\Organizer\Daten.mdb"
cn.Open
rs.ActiveConnection = cn
rs.Source = "Termine"
SuchDatum = Worksheets("Wochenansicht").Cells(2, 5).Text
SuchDatum = Format(CDate(SuchDatum), "\#mm\/dd\/yyyy\#")
sSql = "SELECT * FROM Termine WHERE Datum=" + SuchDatum + "ORDER BY Zeit"
rs.Open (sSql)
Worksheets("Wochenansicht").Cells(3, 2) = rs![Zeit]
Worksheets("Wochenansicht").Cells(3, 3) = rs![Thema]
rs.MoveNext
Worksheets("Wochenansicht").Cells(4, 2) = rs![Zeit]
Worksheets("Wochenansicht").Cells(4, 3) = rs![Thema]
rs.MoveNext
Worksheets("Wochenansicht").Cells(5, 2) = rs![Zeit]
Worksheets("Wochenansicht").Cells(5, 3) = rs![Thema]
rs.MoveNext
Worksheets("Wochenansicht").Cells(6, 2) = rs![Zeit]
Worksheets("Wochenansicht").Cells(6, 3) = rs![Thema]
End Function

##########################################################################

Function Dienstag()
On Error Resume Next
Dim cn As New ADODB.Connection, rs As New ADODB.Recordset
Dim sSql As String
Dim SuchDatum As String
cn.Provider = "Microsoft.Jet.OLEDB.4.0"
cn.ConnectionString = "M:\Themen\PROJEKT\Organizer\Organizer\Daten.mdb"
cn.Open
rs.ActiveConnection = cn
rs.Source = "Termine"
SuchDatum = Worksheets("Wochenansicht").Cells(16, 5).Text
SuchDatum = Format(CDate(SuchDatum), "\#mm\/dd\/yyyy\#")
sSql = "SELECT * FROM Termine WHERE Datum=" + SuchDatum + "ORDER BY Zeit"
rs.Open (sSql)
Worksheets("Wochenansicht").Cells(17, 2) = rs![Zeit]
Worksheets("Wochenansicht").Cells(17, 3) = rs![Thema]
rs.MoveNext
Worksheets("Wochenansicht").Cells(18, 2) = rs![Zeit]
Worksheets("Wochenansicht").Cells(18, 3) = rs![Thema]
rs.MoveNext
Worksheets("Wochenansicht").Cells(19, 2) = rs![Zeit]
Worksheets("Wochenansicht").Cells(19, 3) = rs![Thema]
rs.MoveNext
Worksheets("Wochenansicht").Cells(20, 2) = rs![Zeit]
Worksheets("Wochenansicht").Cells(20, 3) = rs![Thema]
End Function

##########################################################################

Function Mittwoch()
...und so weiter!!!!
...ich möchte diese Sache in einer Funktion mit Schleife für
"Montag" bis "Sonntag".....
Wie bekomme ich das hin?  ...(hab keine Ahnung von Schleifen!)
MFG
Soniqe

		
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Schleife
P@ulchen
Hi,
probier mal so (ungetestet):


Function Wochentage()
Dim cn As New ADODB.Connection, rs As New ADODB.Recordset
Dim sSql As String
Dim SuchDatum As String
On Error Resume Next
cn.Provider = "Microsoft.Jet.OLEDB.4.0"
cn.ConnectionString = "M:\Themen\PROJEKT\Organizer\Organizer\Daten.mdb"
cn.Open
rs.ActiveConnection = cn
rs.Source = "Termine"
For i = 2 To 86 Step 14
    SuchDatum = Worksheets("Wochenansicht").Cells(i, 5).Text
    SuchDatum = Format(CDate(SuchDatum), "\#mm\/dd\/yyyy\#")
    sSql = "SELECT * FROM Termine WHERE Datum=" + SuchDatum + "ORDER BY Zeit"
    rs.Open (sSql)
    Worksheets("Wochenansicht").Cells(i + 1, 2) = rs![Zeit]
    Worksheets("Wochenansicht").Cells(i + 1, 3) = rs![Thema]
    rs.MoveNext
    Worksheets("Wochenansicht").Cells(i + 2, 2) = rs![Zeit]
    Worksheets("Wochenansicht").Cells(i + 2, 3) = rs![Thema]
    rs.MoveNext
    Worksheets("Wochenansicht").Cells(i + 3, 2) = rs![Zeit]
    Worksheets("Wochenansicht").Cells(i + 3, 3) = rs![Thema]
    rs.MoveNext
    Worksheets("Wochenansicht").Cells(i + 4, 2) = rs![Zeit]
    Worksheets("Wochenansicht").Cells(i + 4, 3) = rs![Thema]
Next i
End Function


Gruß aus Leipzig
P@ulchen
Das Forum lebt auch von den Rückmeldungen !
Anzeige
AW: Schleife
Soniqe
Danke P@ulchen,
aber das war es noch nicht ganz!!!

...Bekomme jezt nur Termine für Montag angezeigt...die Schleife soll Montag bis Sonntag
durchlaufen
....hier nochmal der komplette code:
##########################################################################

Function Montag()
On Error Resume Next
Dim cn As New ADODB.Connection, rs As New ADODB.Recordset
Dim sSql As String
Dim SuchDatum As String
cn.Provider = "Microsoft.Jet.OLEDB.4.0"
cn.ConnectionString = "M:\Themen\PROJEKT\Organizer\Organizer\Daten.mdb"
cn.Open
rs.ActiveConnection = cn
rs.Source = "Termine"
SuchDatum = Worksheets("Wochenansicht").Cells(2, 5).Text
SuchDatum = Format(CDate(SuchDatum), "\#mm\/dd\/yyyy\#")
sSql = "SELECT * FROM Termine WHERE Datum=" + SuchDatum + "ORDER BY Zeit"
rs.Open (sSql)
Worksheets("Wochenansicht").Cells(3, 2) = rs![Zeit]
Worksheets("Wochenansicht").Cells(3, 3) = rs![Thema]
rs.MoveNext
Worksheets("Wochenansicht").Cells(4, 2) = rs![Zeit]
Worksheets("Wochenansicht").Cells(4, 3) = rs![Thema]
rs.MoveNext
Worksheets("Wochenansicht").Cells(5, 2) = rs![Zeit]
Worksheets("Wochenansicht").Cells(5, 3) = rs![Thema]
rs.MoveNext
Worksheets("Wochenansicht").Cells(6, 2) = rs![Zeit]
Worksheets("Wochenansicht").Cells(6, 3) = rs![Thema]
End Function

##########################################################################

Function Dienstag()
On Error Resume Next
Dim cn As New ADODB.Connection, rs As New ADODB.Recordset
Dim sSql As String
Dim SuchDatum As String
cn.Provider = "Microsoft.Jet.OLEDB.4.0"
cn.ConnectionString = "M:\Themen\PROJEKT\Organizer\Organizer\Daten.mdb"
cn.Open
rs.ActiveConnection = cn
rs.Source = "Termine"
SuchDatum = Worksheets("Wochenansicht").Cells(16, 5).Text
SuchDatum = Format(CDate(SuchDatum), "\#mm\/dd\/yyyy\#")
sSql = "SELECT * FROM Termine WHERE Datum=" + SuchDatum + "ORDER BY Zeit"
rs.Open (sSql)
Worksheets("Wochenansicht").Cells(17, 2) = rs![Zeit]
Worksheets("Wochenansicht").Cells(17, 3) = rs![Thema]
rs.MoveNext
Worksheets("Wochenansicht").Cells(18, 2) = rs![Zeit]
Worksheets("Wochenansicht").Cells(18, 3) = rs![Thema]
rs.MoveNext
Worksheets("Wochenansicht").Cells(19, 2) = rs![Zeit]
Worksheets("Wochenansicht").Cells(19, 3) = rs![Thema]
rs.MoveNext
Worksheets("Wochenansicht").Cells(20, 2) = rs![Zeit]
Worksheets("Wochenansicht").Cells(20, 3) = rs![Thema]
End Function

##########################################################################

Function Mittwoch()
On Error Resume Next
Dim cn As New ADODB.Connection, rs As New ADODB.Recordset
Dim sSql As String
Dim SuchDatum As String
cn.Provider = "Microsoft.Jet.OLEDB.4.0"
cn.ConnectionString = "M:\Themen\PROJEKT\Organizer\Organizer\Daten.mdb"
cn.Open
rs.ActiveConnection = cn
rs.Source = "Termine"
SuchDatum = Worksheets("Wochenansicht").Cells(30, 5).Text
SuchDatum = Format(CDate(SuchDatum), "\#mm\/dd\/yyyy\#")
sSql = "SELECT * FROM Termine WHERE Datum=" + SuchDatum + "ORDER BY Zeit"
rs.Open (sSql)
Worksheets("Wochenansicht").Cells(31, 2) = rs![Zeit]
Worksheets("Wochenansicht").Cells(31, 3) = rs![Thema]
rs.MoveNext
Worksheets("Wochenansicht").Cells(32, 2) = rs![Zeit]
Worksheets("Wochenansicht").Cells(32, 3) = rs![Thema]
rs.MoveNext
Worksheets("Wochenansicht").Cells(33, 2) = rs![Zeit]
Worksheets("Wochenansicht").Cells(33, 3) = rs![Thema]
rs.MoveNext
Worksheets("Wochenansicht").Cells(34, 2) = rs![Zeit]
Worksheets("Wochenansicht").Cells(34, 3) = rs![Thema]
End Function

##########################################################################

Function Donnerstag()
On Error Resume Next
Dim cn As New ADODB.Connection, rs As New ADODB.Recordset
Dim sSql As String
Dim SuchDatum As String
cn.Provider = "Microsoft.Jet.OLEDB.4.0"
cn.ConnectionString = "M:\Themen\PROJEKT\Organizer\Organizer\Daten.mdb"
cn.Open
rs.ActiveConnection = cn
rs.Source = "Termine"
SuchDatum = Worksheets("Wochenansicht").Cells(2, 11).Text
SuchDatum = Format(CDate(SuchDatum), "\#mm\/dd\/yyyy\#")
sSql = "SELECT * FROM Termine WHERE Datum=" + SuchDatum + "ORDER BY Zeit"
rs.Open (sSql)
Worksheets("Wochenansicht").Cells(3, 8) = rs![Zeit]
Worksheets("Wochenansicht").Cells(3, 9) = rs![Thema]
rs.MoveNext
Worksheets("Wochenansicht").Cells(4, 8) = rs![Zeit]
Worksheets("Wochenansicht").Cells(4, 9) = rs![Thema]
rs.MoveNext
Worksheets("Wochenansicht").Cells(5, 8) = rs![Zeit]
Worksheets("Wochenansicht").Cells(5, 9) = rs![Thema]
rs.MoveNext
Worksheets("Wochenansicht").Cells(6, 8) = rs![Zeit]
Worksheets("Wochenansicht").Cells(6, 9) = rs![Thema]
End Function

##########################################################################

Function Freitag()
On Error Resume Next
Dim cn As New ADODB.Connection, rs As New ADODB.Recordset
Dim sSql As String
Dim SuchDatum As String
cn.Provider = "Microsoft.Jet.OLEDB.4.0"
cn.ConnectionString = "M:\Themen\PROJEKT\Organizer\Organizer\Daten.mdb"
cn.Open
rs.ActiveConnection = cn
rs.Source = "Termine"
SuchDatum = Worksheets("Wochenansicht").Cells(16, 11).Text
SuchDatum = Format(CDate(SuchDatum), "\#mm\/dd\/yyyy\#")
sSql = "SELECT * FROM Termine WHERE Datum=" + SuchDatum + "ORDER BY Zeit"
rs.Open (sSql)
Worksheets("Wochenansicht").Cells(17, 8) = rs![Zeit]
Worksheets("Wochenansicht").Cells(17, 9) = rs![Thema]
rs.MoveNext
Worksheets("Wochenansicht").Cells(18, 8) = rs![Zeit]
Worksheets("Wochenansicht").Cells(18, 9) = rs![Thema]
rs.MoveNext
Worksheets("Wochenansicht").Cells(19, 8) = rs![Zeit]
Worksheets("Wochenansicht").Cells(19, 9) = rs![Thema]
rs.MoveNext
Worksheets("Wochenansicht").Cells(20, 8) = rs![Zeit]
Worksheets("Wochenansicht").Cells(20, 9) = rs![Thema]
End Function

##########################################################################

Function Samstag()
On Error Resume Next
Dim cn As New ADODB.Connection, rs As New ADODB.Recordset
Dim sSql As String
Dim SuchDatum As String
cn.Provider = "Microsoft.Jet.OLEDB.4.0"
cn.ConnectionString = "M:\Themen\PROJEKT\Organizer\Organizer\Daten.mdb"
cn.Open
rs.ActiveConnection = cn
rs.Source = "Termine"
SuchDatum = Worksheets("Wochenansicht").Cells(30, 11).Text
SuchDatum = Format(CDate(SuchDatum), "\#mm\/dd\/yyyy\#")
sSql = "SELECT * FROM Termine WHERE Datum=" + SuchDatum + "ORDER BY Zeit"
rs.Open (sSql)
Worksheets("Wochenansicht").Cells(31, 8) = rs![Zeit]
Worksheets("Wochenansicht").Cells(31, 9) = rs![Thema]
rs.MoveNext
Worksheets("Wochenansicht").Cells(32, 8) = rs![Zeit]
Worksheets("Wochenansicht").Cells(32, 9) = rs![Thema]
rs.MoveNext
Worksheets("Wochenansicht").Cells(33, 8) = rs![Zeit]
Worksheets("Wochenansicht").Cells(33, 9) = rs![Thema]
rs.MoveNext
Worksheets("Wochenansicht").Cells(34, 8) = rs![Zeit]
Worksheets("Wochenansicht").Cells(34, 9) = rs![Thema]
End Function

##########################################################################

Function Sonntag()
On Error Resume Next
Dim cn As New ADODB.Connection, rs As New ADODB.Recordset
Dim sSql As String
Dim SuchDatum As String
cn.Provider = "Microsoft.Jet.OLEDB.4.0"
cn.ConnectionString = "M:\Themen\PROJEKT\Organizer\Organizer\Daten.mdb"
cn.Open
rs.ActiveConnection = cn
rs.Source = "Termine"
SuchDatum = Worksheets("Wochenansicht").Cells(37, 11).Text
SuchDatum = Format(CDate(SuchDatum), "\#mm\/dd\/yyyy\#")
sSql = "SELECT * FROM Termine WHERE Datum=" + SuchDatum + "ORDER BY Zeit"
rs.Open (sSql)
Worksheets("Wochenansicht").Cells(38, 8) = rs![Zeit]
Worksheets("Wochenansicht").Cells(38, 9) = rs![Thema]
rs.MoveNext
Worksheets("Wochenansicht").Cells(39, 8) = rs![Zeit]
Worksheets("Wochenansicht").Cells(39, 9) = rs![Thema]
rs.MoveNext
Worksheets("Wochenansicht").Cells(40, 8) = rs![Zeit]
Worksheets("Wochenansicht").Cells(40, 9) = rs![Thema]
rs.MoveNext
Worksheets("Wochenansicht").Cells(41, 8) = rs![Zeit]
Worksheets("Wochenansicht").Cells(41, 9) = rs![Thema]
End Function

##########################################################################
Anzeige
AW: Schleife
Ingolf
Hallo Soniqe,
schreib doch einfach eine Prozedur, die deine Makros für Montag bis Sonntag nacheinander aufruft und starte diese an Stelle deiner einzelnen Makros:

Private Sub Wochentage()
Montag
Dienstag
Mittwoch
Donnerstag
Freitag
Samstag
Sonntag
End Sub

Gruß Ingolf
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige