Bereich mit Wert oder String füllen

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

Moderator: Moderatoren

clag
********
Beiträge: 3570
Registriert: Di, 27.01.2009 15:30

Bereich mit Wert oder String füllen

Beitrag von clag »

Hallo Leutz

wie bzw mit welchem Basic-Konstrukt kann ich einem Bereich einen einheitlichen wert zuweisen

zum Inhalte entfernen habe ich das hier hingefummelt

Code: Alles auswählen

oCellRange = thiscomponent.Sheets().getByName("Tabelle1").getcellrangebyposition(0,myvalue01,0,myvalue02)
clearContents(com.sun.star.sheet.CellFlags.VALUE) 
aber wie bekomme ich auf diese oder ähnliche Weise Werte oder Text in die Zellen hinein ?

also ich meine natürlich in alle Zellen des Bereiches den gleichen Wert oder String

Danke ...
LG
clag

nutzt: WinXP SP3 / AOO 4.1.10 / Firefox
bst
*****
Beiträge: 222
Registriert: Mo, 18.01.2010 16:14
Wohnort: Ilsfeld

Re: Bereich mit Wert oder String füllen

Beitrag von bst »

Hi,

nimm vielleicht setDataArray.

HTH, Bernd
--

Code: Alles auswählen

Sub x
	dim iStartRow as integer, iEndRow as integer, i as integer, j as integer
	dim ar, oCellRange as object
	dim strVal As String
	
	strVal = "Hallo"
	iStartRow = 3	' Zeile  4
	iEndRow   = 9	' Zeile 10
	oCellRange = thiscomponent.Sheets().getByName("Tabelle1").getcellrangebyposition(0,iStartRow,0,iEndRow)

	'ar = oCellRange.getDataArray
	ReDim ar(0 to iEndRow - iStartRow)
	for i = 0 to iEndRow - iStartRow
		ar(i) = Array(strVal)
	next
	oCellRange.setDataArray(ar)
End Sub
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: Bereich mit Wert oder String füllen

Beitrag von komma4 »

Nimm vor allem einen BEREICH und nicht jede Zelle einzeln.
Dann ist der Hinweis auf setDataArray auch angebracht.


@clag: Du bist nun lange genug hier, um die FORENSUCHE zu kennen. Auch Tante Google hilft Dir weiter.

Du hast keine "neuen" Probleme (bei der Programmierung), sondern Standardfragen.
Die sind seit Jahren beantwortet.

Lese mal etwas mehr.
ICH jedenfalls habe keine Lust mehr Dir alles vorzukauen.

Viel Erfolg!
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
clag
********
Beiträge: 3570
Registriert: Di, 27.01.2009 15:30

Re: Bereich mit Wert oder String füllen

Beitrag von clag »

Hi,

es scheint mir ich habe mich irgendwie missverständlich ausgequetscht

also ich möchte auf einen Schlag in einer Spalte einen durchgehenden Bereich zB A1:A200 leeren ok das kriege ich hin
und dann, einen Teil davon wieder auf einen Schlag mit Einsen füllen zB A50:A120
und das soll möglichst schnell gehen ......... (leo leo ;)
LG
clag

nutzt: WinXP SP3 / AOO 4.1.10 / Firefox
Karolus
********
Beiträge: 7532
Registriert: Mo, 02.01.2006 19:48

Re: Bereich mit Wert oder String füllen

Beitrag von Karolus »

Hallo
Bernd hat schon hingeschrieben wie das geht.

Gruß Karo
LO7.4.7.2 debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
clag
********
Beiträge: 3570
Registriert: Di, 27.01.2009 15:30

Re: Bereich mit Wert oder String füllen

Beitrag von clag »

Hi

@ komma4

wenn es danach ginge dann müsste hier der Zutritt für Anfänger wie mich gesperrt werden
denn auch in drei Jahren werden die, die in dem Bereich etwas lernen wollen die selben Fragen haben und auch stellen !

Was würdest du sagen wenn ein Grundschullehrer alle seine Schüler wieder nach Hause schickt
weil er keine Lust hat etwas zu wiederholen und sagt lest in Google nach, da steht alles ?

natürlich man kann alles irgendwo nachlesen

wozu gibt es bloß noch Schulen und Uni's da wird doch auch nur alles wiederholt,
die könnte man doch eigentlich auch zumachen ..............

solche Aussagen finde ich bedauerlich denn es hilft dem Fragenden rein gar nichts !

und vor allem wo ist das Problem bei wiederholten Fragen ?
LG
clag

nutzt: WinXP SP3 / AOO 4.1.10 / Firefox
Benutzeravatar
sven-my
*****
Beiträge: 358
Registriert: Fr, 14.12.2007 19:56

Re: Bereich mit Wert oder String füllen

Beitrag von sven-my »

Hallo Leute,

auch ich suche mich seit Stunden kaputt, nach einer Möglichkeit per Makro einen variablen Bereich zu leeren, um ihn dann neu zu schreiben.

Wegen dieser oftmaligen Nörgelei, es sein schon irgendwo beschrieben, habe ich mir das Fragen verkniffen.

Durch ein RSS-Abo bin ich auf dieen Beitrag gestoßen.

Hallo clag,
clag hat geschrieben:auf einen Schlag in einer Spalte einen durchgehenden Bereich zB A1:A200 leeren ok das kriege ich hin
kannst Du mir das mal zuschicken ?

Reinschreiben kann ich schon :) - Sheetnamen per Schleife, die alten Sheetnamen lösche ich bisher auch über eine Schleife, was aber dauerd.
Einfach drüberschreiben bringt es nicht, wenn eine Tabelle gelöscht wurde.

gruß
sven-my
win7 prof / AOO 4.1.2 & AOO 3.4.0 portable
clag
********
Beiträge: 3570
Registriert: Di, 27.01.2009 15:30

Re: Bereich mit Wert oder String füllen

Beitrag von clag »

Hi ,

das bisschen was ich habe/kenne teil ich gern ;)

das funktioniert nicht wenn in dem Bereich Teile ausgeblendet sind,
man muss also ggf den Bereich erst wieder komplett einblenden .......

Code: Alles auswählen


oCellRange = thiscomponent.Sheets().getByName("Tabelle 1").getcellrangebyposition(19,1,19,401)
ocellRange.clearContents(com.sun.star.sheet.CellFlags.VALUE)

'	oCalc = thisComponent
'	oSheet = oCalc.sheets(0)
'	oCellRange = osheet.getCellRangeByName("A2:B5")
    
'	ocellRange.clearContents(com.sun.star.sheet.CellFlags.VALUE_
'                         +com.sun.star.sheet.CellFlags.STRING_
'                         +com.sun.star.sheet.CellFlags.DATETIME)
'	ocell=osheet.getcellbyposition(0,0)
'	ocell.clearContents(com.sun.star.sheet.CellFlags.VALUE_
'                         +com.sun.star.sheet.CellFlags.STRING_
'                         +com.sun.star.sheet.CellFlags.DATETIME)

' ClearContents benötigt Parameter mit den bestimmt werden welche Inhallte oder Formatierungen gelöscht werden sollen.
' Diese Parameter werden durch "+" kombiniert
LG
clag

nutzt: WinXP SP3 / AOO 4.1.10 / Firefox
Benutzeravatar
sven-my
*****
Beiträge: 358
Registriert: Fr, 14.12.2007 19:56

Re: Bereich mit Wert oder String füllen

Beitrag von sven-my »

Hallo clag,

herzlichen Dank !

Die ersten beiden Zeilen reichten schon aus (nach etwas Anpassung), um zu erreichen, was ich wollte.

Code: Alles auswählen

oCellRange = thiscomponent.Sheets().getByName("helpme").getcellrangebyposition(9,9,9,30)
ocellRange.clearContents(com.sun.star.sheet.CellFlags.STRING)
sven-my hat geschrieben:Diese Parameter werden durch "+" kombiniert
Heißt das, wenn Zahlen und/oder Text im Bereich enthalten sind, muß es so aussehen ? :

Code: Alles auswählen

ocellRange.clearContents(com.sun.star.sheet.CellFlags.STRING+com.sun.star.sheet.CellFlags.VALUE)



gruß
sven-my
win7 prof / AOO 4.1.2 & AOO 3.4.0 portable
clag
********
Beiträge: 3570
Registriert: Di, 27.01.2009 15:30

Re: Bereich mit Wert oder String füllen

Beitrag von clag »

hi sven-my

mein "Selbstversuch" am lebenden Objekt "ZoomDiagramm" hat gerade deine Vermutung bestätigt :lol:

jetzt musst du aber zeigen wie ich meinen Wert da wieder rein kriege ...............
LG
clag

nutzt: WinXP SP3 / AOO 4.1.10 / Firefox
Benutzeravatar
sven-my
*****
Beiträge: 358
Registriert: Fr, 14.12.2007 19:56

Re: Bereich mit Wert oder String füllen

Beitrag von sven-my »

Hallo clag,

da fragst Du aber den Falschen --- bin froh, wenn ich mehr als zwei Zeilen zu Laufen kriege.

gruß
sven-my
win7 prof / AOO 4.1.2 & AOO 3.4.0 portable
DPunch
*******
Beiträge: 1112
Registriert: Mo, 02.11.2009 16:16
Wohnort: Marburg

Re: Bereich mit Wert oder String füllen

Beitrag von DPunch »

Aloha
clag hat geschrieben:jetzt musst du aber zeigen wie ich meinen Wert da wieder rein kriege ...............
Karolus hat geschrieben:Hallo
Bernd hat schon hingeschrieben wie das geht.

Gruß Karo
...und das sogar mit einem mehr oder weniger direkt auf Deine Frage passenden Codebeispiel ;)
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: Bereich mit Wert oder String füllen

Beitrag von komma4 »

clag hat geschrieben:natürlich man kann alles irgendwo nachlesen

wozu gibt es bloß noch Schulen und Uni's da wird doch auch nur alles wiederholt,

Und "Nachlesen" tust Du nicht.

Andrews Makrodokument hat mehrere Beispiele für "Bereichsbearbeitung", auch in meinen Makros findet sich was.
Ausserdem ist das hier keine Schule, sondern ein Benutzerforum, wo freiwillig Hilfe anbieten. Sprich: Hilfe zur Selbsthilfe.

sven-my hat geschrieben:Wegen dieser oftmaligen Nörgelei, es sein schon irgendwo beschrieben, habe ich mir das Fragen verkniffen.
Das ist keine Nörgelei, sondern Kritik an der Unselbständigkeit die Forensuche zu benutzen.
Die bringt meist mehr Treffer als gewünscht, da muss man (=Du!) halt mal ein bisschen suchen.

Aber...Posten ist ja so einfach
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
Benutzeravatar
sven-my
*****
Beiträge: 358
Registriert: Fr, 14.12.2007 19:56

Re: Bereich mit Wert oder String füllen

Beitrag von sven-my »

Hallo Winfried,

wenn ich genau weiß, welche Stichworte in einem Beitrag verbaut sind, finde ich auch, was ich suche.

Dann nsuch doch mal alle Beiträge durch, die hier in diesem Forum mit der eingebauten Suchfunktion zu finden sind, wenn man eingibt:

bereich löschen

Un wenns Dir zu blöd ist zu helfen --- LASS es, es zwingt Dich keiner


VIEL SPAß

sven-my
win7 prof / AOO 4.1.2 & AOO 3.4.0 portable
bst
*****
Beiträge: 222
Registriert: Mo, 18.01.2010 16:14
Wohnort: Ilsfeld

Re: Bereich mit Wert oder String füllen

Beitrag von bst »

Auch nochmals Hallo,

die obige Sub x - siehe viewtopic.php?f=18&t=41197#p152191 - füllt den Bereich A4:A10 mit dem Wert "Hallo".

Was daran ist denn nicht klar?

cu, Bernd
Antworten