Einträge mit "farbigem Stift"

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Einträge mit "farbigem Stift"

Re: Einträge mit "farbigem Stift"

von BenHEP » So, 02.02.2014 13:55

Karolus hat geschrieben:Hallo

Das Dokument öffnet mit der selben Ansicht wie beim letzten schliessen...
( falls an der Stelle eine Änderung gespeichert wurde )

Karolus
Ja, das habe ich gemerkt. Die Wahl der Farbe ist jedoch nicht wie im Beispiel "color_entry" auf der Seite der Kalender-Tabelle sondern auf einer separaten Seite. Da ja die Benutzer vor ihren Eintragungen zunächst ihre Farbe wählen sollten, wäre es gut wenn diese Auswahl zu allererst getätigt wird.
Die "zuletzt-geändert"-Position für alle anderen Tabellen darf gerne beibehalten werden, nur soll die Farb-Wahl-Tabelle beim öffnen aktiv sein.

LG
Ben

Re: Einträge mit "farbigem Stift"

von Karolus » So, 02.02.2014 00:44

Hallo

Das Dokument öffnet mit der selben Ansicht wie beim letzten schliessen...
( falls an der Stelle eine Änderung gespeichert wurde )

Karolus

Re: Einträge mit "farbigem Stift"

von BenHEP » Sa, 01.02.2014 19:31

Eine abschließende Frage noch:

was muss ich tun, dass beim Öffnen des Dokuments mit mehreren Tabellen immer eine bestimmte Tabelle automatisch gewählt wird?

Re: Einträge mit "farbigem Stift"

von BenHEP » Sa, 01.02.2014 13:13

Gute Arbeit, Männer!

Ich hab die Variante von Karolus trotz meiner nur grundlegenden Calc-Kentnisse umsetzen können und es funktioniert jetzt auf der gesamten ersten Tabelle. Alles weitere sollte ich alleine hinbekommen.

Vielen Dank für eure Unterstützung und ein schönes WE!

Ben

Re: Einträge mit "farbigem Stift"

von Karolus » Sa, 01.02.2014 10:09

Hallo
Wie ergänze ich jetzt die folgenden Seiten in das oben genannte SUB? Die betreffenden Bereiche lauten D5:AH27, D33:AH55, D61:AH83, usw..

Code: Alles auswählen

Sub color(event)

sheet = event.Spreadsheet
currentaddress = event.RangeAddress
colorranges = array("D5:AH27", "D33:AH55", "D61:AH83") '# entsprechend erweitern'
for each range in colorranges
    range = sheet.getCellRangeByName( range )
    if range.queryIntersection(currentaddress).count = 1 then
        event.Cellstyle = sheet.getCellrangeByName("A1").String
        exit for
    end if
next
End Sub
Erschwerend kommt jetzt noch hinzu, dass ich in einem Dokument ca 10 dieser Jahreskalender, jeweils in einer separaten Tabelle verwalten möchte. Wird davon das SUB beeinflusst? Gerne kann die Auswahl der Farbe EINMAL getroffen werden und dann für alle 10 Tabellen gültig sein. Notwendig ist dies aber nicht. Sie könnte auch auf jeder Tabelle neu wählbar sein - was einfacher zu schreiben ist.
Farben nebst Namen definierst du jeweils über eine Zellvorlage (die gilt fürs ganze Dokument) - du musst nur für jedes der 10 Tabellenblätter das Tabellenereignis 'Inhalt geändert' mit dem Makro verknüpfen.

Karolus

Re: Einträge mit "farbigem Stift"

von F3K Total » Sa, 01.02.2014 09:15

Moin,
BenHEP hat geschrieben:D5:AH27, D33:AH55, D61:AH83, usw..
Dann nimmst Du dieses Makro:

Code: Alles auswählen

Sub colorize(event)
    sRanges = Array("D5:AH27", "D33:AH55", "D61:AH83")'hier die Zellbereiche eintragen
    osheet = event.Spreadsheet
    acurrentaddress = event.RangeAddress
    aColorranges = ThisComponent.createInstance("com.sun.star.sheet.SheetCellRanges")
    for i = 0 to ubound (sRanges)
        aColorranges.addRangeAddress(oSheet.getCellRangeByName(sRanges(i)).RangeAddress,False)
    next i
    if aColorranges.queryIntersection(acurrentaddress).count = 1 then
        'Zellvorlage wird aus A1 ausgelesen und zugewiesen
        event.Cellstyle = osheet.getCellrangeByName("A1").String 
    end if
End Sub
Noch ein Tipp: füge dem Namensbereich z.B. den Namen "löschen" hinzu und ordne ihm keine Zellvorlage zu.

Gruß R

Re: Einträge mit "farbigem Stift"

von BenHEP » Fr, 31.01.2014 23:58

Karolus hat geschrieben:Hallo R

Warum so kompliziert, Ben muss doch nur für jeden Benutzer eine Zellvorlage mit dem Namen des jeweiligen Benutzers kreieren, und ( ausser →Daten→Gültigkeit.. für den Namenseintrag in A1 ) folgendes ans Ereignis 'Inhalt geändert' binden:

Code: Alles auswählen

Sub colorize(event)
sheet = event.Spreadsheet
currentaddress = event.RangeAddress
colorrange = sheet.getCellRangeByName("B2:F20") 
if colorrange.queryIntersection(currentaddress).count = 1 then
      'Zellvorlage wird aus A1 ausgelesen und zugewiesen
    event.Cellstyle = sheet.getCellrangeByName("A1").String 
end if
End Sub
Karolus

BOA ich fall ja gleich vom Stuhl. Is ja der Hammer was ihr euch für ne Arbeit macht! Danke. Ich bin jetzt zu müde das zu probieren aber morgen setz ich mich dran. Ergänzend nur noch folgendes:
Ich habe den gesamten Kalender 2014 in einer Tabelle, jeweils eine Seite pro Monat. Wie ergänze ich jetzt die folgenden Seiten in das oben genannte SUB? Die betreffenden Bereiche lauten D5:AH27, D33:AH55, D61:AH83, usw..

Erschwerend kommt jetzt noch hinzu, dass ich in einem Dokument ca 10 dieser Jahreskalender, jeweils in einer separaten Tabelle verwalten möchte. Wird davon das SUB beeinflusst? Gerne kann die Auswahl der Farbe EINMAL getroffen werden und dann für alle 10 Tabellen gültig sein. Notwendig ist dies aber nicht. Sie könnte auch auf jeder Tabelle neu wählbar sein - was einfacher zu schreiben ist.

Danke Rik und Karolus für eure hilfreichen Beiträge!
Ben

Re: Einträge mit "farbigem Stift"

von F3K Total » Fr, 31.01.2014 23:07

Hallo Karolus,
Karolus hat geschrieben:Ben muss doch nur für jeden Benutzer eine Zellvorlage mit dem Namen des jeweiligen Benutzers kreieren ...
Gute Idee!
Danke für den Tipp.
Gruß Rik

Re: Einträge mit "farbigem Stift"

von Karolus » Fr, 31.01.2014 20:49

Hallo R

Warum so kompliziert, Ben muss doch nur für jeden Benutzer eine Zellvorlage mit dem Namen des jeweiligen Benutzers kreieren, und ( ausser →Daten→Gültigkeit.. für den Namenseintrag in A1 ) folgendes ans Ereignis 'Inhalt geändert' binden:

Code: Alles auswählen

Sub colorize(event)
sheet = event.Spreadsheet
currentaddress = event.RangeAddress
colorrange = sheet.getCellRangeByName("B2:F20") 
if colorrange.queryIntersection(currentaddress).count = 1 then
      'Zellvorlage wird aus A1 ausgelesen und zugewiesen
    event.Cellstyle = sheet.getCellrangeByName("A1").String 
end if
End Sub
Karolus

Re: Einträge mit "farbigem Stift"

von F3K Total » Fr, 31.01.2014 19:26

Hallo Ben,
ich denke, was du vorhast, geht nur per Makro, darum habe ich eines geschrieben:

Code: Alles auswählen

global nCurrentcolor as long
Sub S_Insert_Color(changedCell)
    osheet = Thiscomponent.currentcontroller.activesheet
    sSheetname = osheet.Name
    oARange = oSheet.getCellRangeByName("B3:AF22")'Bereich in dem Farben eingetragen werden
    aCurrentRangeaddress = changedCell.Rangeaddress
    if changedCell.AbsoluteName = "$"+sSheetname+".$A$1" then 'Zelle in der der aktuelle Name eingetragen wird
        sName = oSheet.getcellbyposition(0,0).string
        oSheetPersonen = Thiscomponent.Sheets.getbyname("Personen")'Tabellenblatt auf dem die Personen stehen
        oRangePersoenen = oSheetPersonen.getcellrangebyname("A2:B5") 'Bereich in dem die Personen und jeweiligen Farben stehen
        for i = 0 to oRangePersoenen.rows.count - 1
            ocell = oRangePersoenen.getcellbyposition(0,i)
            if ocell.string = sName then 
                nCurrentcolor = oRangePersoenen.getcellbyposition(1,i).cellbackcolor'auslesen der aktuellen Hintergrundfarbe
                changedCell.cellbackcolor = nCurrentcolor
                exit for
            end if
        next i
    else 
        if oARange.queryIntersection(aCurrentRangeaddress).count = 1 then
           changedCell.cellbackcolor = nCurrentcolor
        endif
    endif
End Sub
Um es anzupassen:
  • Binde das Makro an das Tabellenereignis "Inhalt geändert" (rechte Maustaste auf Tabellenreiter -> Tabellenereignisse ...) der Tabellenblätter auf denen du "Farbeintragungen" machen möchtest.
  • Erzeuge in Zelle A1 eine Datengültigkeit, die auf die Namen auf einem zusätzlich angelegten Tabellenblatt "Personen" zugreift.
  • Färbe das Feld rechts jedes Namens mit der gewünschten Farbe ein.
  • Schreibe den Bereich der Personen und Farben ins Makro (im Beispiel A2:B5)
  • Schreibe den Zellbereich in dem die Farben eingetragen werden sollen in das Makro (im Beispiel B3:AF22)
Damit das Makro laufen darf, stellst du unter Extras/Optionen/Openoffice.org oder LibreOffice.org/Sicherheit/Makrosicherheit mindestens die Stufe "Mittel" ein, dann wirst du beim Öffnen von Dokumenten gefragt, ob du Makros ausführen möchtest.

Anbei eine Beispieldatei.
Wähle in Zelle A1 eine Person, und trage dann igendwo im Bereich B3:AF22 etwas ein.

Viel Erfolg
Gruß R
Dateianhänge
Color_Entry.ods
(12.92 KiB) 33-mal heruntergeladen

Re: Einträge mit "farbigem Stift"

von BenHEP » Fr, 31.01.2014 17:39

gast freedom hat geschrieben:
Oder meinst du mit "Benutzer" die Anmeldung der Systemoberfläche?
ich meine Extras-Einstellungen-LibreOffice (oder OpenOffice)->Benutzerdaten.
Die kann man zwar verändern, wie und wie oft man will, ist aber nur für einen Benutzer vorgesehen.

Das habe ich getestet. Wenn ich nach den Änderungen die Farbe wechsele, ändert sich die Farbe für alle Felder, auch die bereits geänderten.
Wie kann ich die Farben einem Benutzer zuordnen?

Re: Einträge mit "farbigem Stift"

von BenHEP » Fr, 31.01.2014 17:31

clag hat geschrieben:hi

wieviele Farben brauchst du denn?
wie währe es mit Mottco und und zu jeder Zeitspalte/zeile eine Hilfsreiche in der der Ma sein Kürzel einträgt
und dann wird über das Kürzel und BF eingefärbt?

Ich bräuchte wenigstens 3 Farben, 4 wären Luxus.
Hier mal ein Bild von einem Monat der Jahres-Tabelle:
http://www.pic-upload.de/view-22124218/FLS.jpg.html

Da die Tabelle mit "Tätigkeiten" schon gut gefüllt ist, ist eine dreifache Ausführung für jeden Mitarbeiter zu platzintensiv.

Wenn man in eine Zelle einen Buchstaben + Minuten ("P15" für "Petra arbeitet 15 Minuten) schreiben könnte, BF diese Schreibweise decodieren und die Zahl für weitere Summenformel ebenfalls lesbar gemacht werden könnte, wäre das auch in Ordnung. Allerdings scheint mir ein solches Konstrukt nicht möglich. Und selbst das wäre schon eng.

grüße
Ben

Re: Einträge mit "farbigem Stift"

von clag » Fr, 31.01.2014 12:43

hi

wieviele Farben brauchst du denn?
wie währe es mit Mottco und und zu jeder Zeitspalte/zeile eine Hilfsreiche in der der Ma sein Kürzel einträgt
und dann wird über das Kürzel und BF eingefärbt?

Re: Einträge mit "farbigem Stift"

von BenHEP » Fr, 31.01.2014 12:28

gast freedom hat geschrieben:Bearbeiten-Änderungen-Aufzeichnen könnte die Lösung sein.
Allerdings färbt sich nur der Zellenrand, also nicht genau das, was du wolltest.

In den Optionen-Calc-Änderungen kannst du die Farbgebung ändern, wenn du willst.
Damit jeder seine Farbe bekommt, sollten in den Optionen Benutzerdaten eingetragen sein.

Das klingt vielversprechend. Farbige Zellenränder wären auch in Ordnung.
Ist es möglich, für ein Dokument mehrere Benutzer anzulegen, die dann vor oder während der Verwendung des Dokuments gewählt werden? (Ähnlich eines Logins) Oder meinst du mit "Benutzer" die Anmeldung der Systemoberfläche? Die Tabelle wird übrigens in OSX geführt.

Grüße
Ben

Einträge mit "farbigem Stift"

von BenHEP » Do, 30.01.2014 22:46

Hallo Community,

ich bin dabei eine Tabelle zu erstellen, die von mehreren Personen geführt bzw. gefüllt werden soll. Hierbei soll jeder für seine Eintragungen eine Farbe wählen können, damit später ersichtlich ist, wer welche Inhalte (Minutenzahlen) eingetragen hat. Da die meisten Nutzer dieser Liste nicht besonders Office-erfahren sind, sollte die "Stift-Wahl" möglichst einfach, z.B. via Dropdown-Menü von statten gehen.

Bisher ist mir nur die Möglichkeit geläufig, mit verschiedenen Formatvorlagen über den Stylist (F11) und dem "Gießkannenprinzip" die Zellen "schnell" zu formatieren.
Hier sind aber potenzielle Fehlerquellen sowie Erklärungsbedarf für unerfahrene Nutzer nötig. (Ich höre die Kollegen schon: "Waaas? so kompliziert??? :) )
Kann dieses Prinzip in ein Dropdown-Menü eingebunden werden?

Genaueres zur Tabelle: Es ist ein Monatskalender, der verschiedene Tätigkeiten katalogisiert. Die Tage sind in den Spalten, die Tätigkeiten in den Zeilen untereinander.
Da viele kleine Eintragungen (Dauer in Minuten für jeweilige Tätigkeit) pro Tag getätigt werden müssen, kommt eine nachträgliche manuelle Umfärbung der Zellen nicht in Frage.
Ob der Zellenhintergrund oder die Schrift farbig wird, wäre egal.

Könnt ihr nachvollziehen, worum es mir geht und habt ihr eine Idee, wie ich das umsetzen könnte?

viele Grüße und schonmal danke für euer Interesse
Ben

Nach oben