mit Range dein Zellinhalt(Datum) mit einem Datum vergleichen

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

Proximus
Beiträge: 9
Registriert: Do, 26.08.2004 10:24

mit Range dein Zellinhalt(Datum) mit einem Datum vergleichen

Beitrag von Proximus »

Hallo,

ich will ein Datum berechnen das nach einer betimmten Dauer von Tagen liegt. Das st ja noch ein einfach, aber ich will festlegen können ob ich in dieser Dauer an bestimmten Tagen arbeite oder nicht. Sprich Feiertage, Samstag, Sonntag.
Ich hab schon die Überprüfung der Wochenenden hinbekommen, aber das Feiertagsproblem bereitet mir Kopfzerbrechen! *grummel*
Ich will ein Feld in eine VBA Funktion übergeben die ich dann durchlauife und mit dem Datum vergeiche.
Wie geht das? das hab ich bis jetzt:

Option Explicit

Function Auswertung(datum As Date, rng As Excel.Range, breite, hoehe)
Dim i,j

For i = 1 To breite
For j = 1 To hoehe
REM If Range() = datum Then dauer = dauer + 1
Next
Next
REM So gehts in Excel, aber leider nicht in OpenOffice
' For Each item In rng
' msgbox item
' Next item
End Function

Danke und Gruß Proximus
Stephan
********
Beiträge: 12369
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Beitrag von Stephan »

Alle Zellen eines Bereichs (hier A1:C4) kannst Du z.B. so durchlaufen:

Code: Alles auswählen

Sub alle_zellen_durchlaufen
bereich = ThisComponent.Sheets(0).getCellRangeByname("A1:C4")
if bereich.supportsService("com.sun.star.sheet.SheetCellRange") then
	For x = 0 To bereich.Columns.getCount-1
		For y = 0 To bereich.Rows.getCount-1
			'mach was mit dem Zellinhalt
			'z.B. numerischen Inhalt anzeigen
			msgbox bereich.getCellByPosition (x,y).Value
		Next y
	Next x
end if
End sub



Gruß
Stephan
Proximus
Beiträge: 9
Registriert: Do, 26.08.2004 10:24

Beitrag von Proximus »

Hallo

Super dank dir. Klappt ja wunderbar! :D :D :D

Danke und Gruß Proximus
Proximus
Beiträge: 9
Registriert: Do, 26.08.2004 10:24

Beitrag von Proximus »

Hallo,

eine Frage hätte ich allerdings doch noch dazu. Wie kann ich den Tabellennamen mit ins Spiel bringen, so das ich genau eine Tabelle ansprechen kann? Bis jetzt muss ja meine Tabelle noch an der ersten Stelle liegen.

Danke und Gruß Proximus
Stephan
********
Beiträge: 12369
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Beitrag von Stephan »

ändere in meinem Code die eine Zeile in:

Code: Alles auswählen

bereich = ThisComponent.Sheets().GetByName("DeinTabellenname").getCellRangeByname("A1:C4") 

Stephan
Antworten