Domino 9 und frühere Versionen > Entwicklung

Excel-Report nach mehreren Kriterien

<< < (2/2)

g202e:

--- Zitat von: Markus Henke am 17.09.03 - 13:28:14 ---wenn Du immer die gleiche Menge an Daten exportierst, dann kannst Du die Makros ja auch aufzeichnen.

--- Ende Zitat ---
Wie soll das denn funktionieren?
Was meinst du mit gleiche Datenmenge?
Ich habe eine "lebendige" Datenbank, in welcher die Requests nach aktueller Lage eingegeben werden und über diese eigegangenen Requests soll ich einen Quartalsreport in Excel erstellen!
Also: variable Datenmenge.
Das einzige, was ich fest vorgeben kann, ist der Zeitraum(Quartal) und dann noch die regionalen Niederlassungen sowie die Kategorien, welche ich aus Schlüsseldokumenten ziehen könnte.  Mir fehlt nun ein vernünftiger Algorithmus, mit dem ich aus diesen Daten einen Report stricken kann! ??? ??? ???

TMC:
Ich verstehe immer noch nicht Deinen Request ganz richtig.
Trotzdem mal ein Versuch...

Also angenommen das hier bringst Du ins Excel, dann wär das schon mal der 1. Schritt.


Dann einfach mal mit dem Makro-Recorder experimentieren.
Also: Makro aufzeichnen, dann z.B. neue Zeile zwischen Stadt und Datum einfügen, dann STOP und Code ansehen. Diesen Code dann "merken".
In die leere Spalte kannst Du dann z.B. eine Formel für die Quartalsermittlung einfügen (z.B. =AUFRUNDEN(MONAT(C1)/3;0)&". Quartal" )

Und so stückchenweise Dein Makro zusammenzimmern.

Noch zum Thema "Die Anzahl der Zeilen ist variabel", hier eine Funktion, um die letzte Zeile einer Tabelle mit Daten zu ermitteln:


--- Code: ---Public Function GetLastRow(vWS As Variant, Optional X As Long = 1) As Long
'Die Funktion wird wie folgt aufgerufen:
'Y = GetLastRow( "Tabelle1")
'             
' Als ersten Parameter können Sie den Namen einer
' Tabelle oder eine Objektverweis auf einen Worksheet
' übergeben. Der Zweite Parameter ist optional und gibt
' die Spalte an die abgetestet werden soll.

    Dim Y   As Long
    Dim ws  As Worksheet
   
    On Error GoTo PROC_ERR
   
    Select Case UCase(TypeName(vWS))
        Case "STRING"
            Set ws = Worksheets(vWS)
        Case "WORKSHEET"
            Set ws = vWS
        Case Else
            GoTo PROC_ERR
    End Select
   
    With ws
        Y = .Rows.Count
        GetLastRow = .Cells(Y, X).End(xlUp).Row
    End With
   
PROC_EXIT:
    Exit Function
PROC_ERR:
    GetLastRow = -1
    Resume PROC_EXIT
End Function
--- Ende Code ---

usw...

hth,
TMC

** edit **
war noch ein Fehler drin....

Navigation

[0] Themen-Index

[*] Vorherige Sete

Zur normalen Ansicht wechseln