[de-users] Werte aus anderer Tabelle vorschlagen und ergänzen

2012-07-26 Thread Simon Stock

Hallo Liste,

ich muss gerade für mein Studium relativ umfangreiche Artenlisten 
(Botanik) erstellen. Da es relativ mühsam ist, zich wissenschaftliche 
Namen sowie die Trivialnamen und zugehörige Zeigerwerte herauszusuchen 
und einzugeben, habe ich mir aus frei verfügbaren Artenlisten zwei 
Tabellen erstellt. Die eine (Arten.ods) enthält einen eindeutigen Index, 
den wissenschaftlichen Namen und den Trivialnamen. Die andere 
(Zeigerwerte.ods) enthält wieder einen eindeutigen Index und die 
dazugehörigen Zeigerwerte (6 Spalten mit Werten zwischen 0 und 12). Nun 
möchte ich in einer dritten Tabelle, also meiner eigentlichen zu 
erstellenden Artenliste, z.B. "Achillea" eingeben woraufhin LibO dann in 
Arten.ods nachguckt und mir alle mit "Achillea" beginnenden Arten 
vorschlägt. Wenn ich mir dann eine der vorgeschlagenen Arten ausgesucht 
habe (z.B. "Achillea collina"), soll LibO den Namen um "collina" 
ergänzen und gleichzeitig in einem weiteren Feld den Trivialnamen 
("Hügel-Wiesenschafgarbe") aus Arten.ods ergänzen und auch die 
Zeigerwerte (sofern vorhanden, das ist leider nicht immer der Fall) aus 
der Zeigerwerte.ods holen und ebenfalls in die dafür vorgesehenen 
Spalten eintragen.

Wie kann ich das am einfachsten bewerkstelligen?

Vielen Dank,

Simon


--
Informationen zum Abmelden: E-Mail an users+h...@de.libreoffice.org
Probleme? 
http://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert



Re: [de-users] Werte aus anderer Tabelle vorschlagen und ergänzen

2012-07-26 Thread Robert Großkopf
Hallo Simon,
> 
> ich muss gerade für mein Studium relativ umfangreiche Artenlisten
> (Botanik) erstellen. Da es relativ mühsam ist, zich wissenschaftliche
> Namen sowie die Trivialnamen und zugehörige Zeigerwerte herauszusuchen
> und einzugeben, habe ich mir aus frei verfügbaren Artenlisten zwei
> Tabellen erstellt. Die eine (Arten.ods) enthält einen eindeutigen Index,
> den wissenschaftlichen Namen und den Trivialnamen. Die andere
> (Zeigerwerte.ods) enthält wieder einen eindeutigen Index und die
> dazugehörigen Zeigerwerte (6 Spalten mit Werten zwischen 0 und 12). Nun
> möchte ich in einer dritten Tabelle, also meiner eigentlichen zu
> erstellenden Artenliste, z.B. "Achillea" eingeben woraufhin LibO dann in
> Arten.ods nachguckt und mir alle mit "Achillea" beginnenden Arten
> vorschlägt. Wenn ich mir dann eine der vorgeschlagenen Arten ausgesucht
> habe (z.B. "Achillea collina"), soll LibO den Namen um "collina"
> ergänzen und gleichzeitig in einem weiteren Feld den Trivialnamen
> ("Hügel-Wiesenschafgarbe") aus Arten.ods ergänzen und auch die
> Zeigerwerte (sofern vorhanden, das ist leider nicht immer der Fall) aus
> der Zeigerwerte.ods holen und ebenfalls in die dafür vorgesehenen
> Spalten eintragen.
> Wie kann ich das am einfachsten bewerkstelligen?

Ehrliche Antwort: Es gibt vielleicht viele Leute, die so etwas mit einer
Tabellenkalkulation machen. Ich lese aber nur etwas von zwei Tabellen,
sogar mit eindeutigem Index - nichts von irgendwelchen Berechnungen, für
die Calc ja eigentlich gedacht ist. Da bietet sich doch viel mehr eine
Datenbank an:
Warum nicht alles in einer Tabelle steht erschließt sich mir erst einmal
nicht, da wohl beide Tabellen den gleichen Index haben - vielleicht,
weil "Zeigerwerte" eben nicht jedes Mal in "Arten" vorkommt. Also Zwei
Datenbanktabellen, eine Abfrage und ein Formular - dann musst Du auch
nicht immer darauf achten, dass ein Index eindeutig ist - das macht eine
Datenbank automatisch.

Gruß

Robert


-- 
Informationen zum Abmelden: E-Mail an users+h...@de.libreoffice.org
Probleme? 
http://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert



Re: [de-users] Werte aus anderer Tabelle vorschlagen und ergänzen

2012-07-26 Thread Simon Stock

Am 26.07.2012 12:17, schrieb Robert Großkopf:

Ehrliche Antwort: Es gibt vielleicht viele Leute, die so etwas mit einer
Tabellenkalkulation machen. Ich lese aber nur etwas von zwei Tabellen,
sogar mit eindeutigem Index - nichts von irgendwelchen Berechnungen, für
die Calc ja eigentlich gedacht ist. Da bietet sich doch viel mehr eine
Datenbank an:
Warum nicht alles in einer Tabelle steht erschließt sich mir erst einmal
nicht, da wohl beide Tabellen den gleichen Index haben - vielleicht,
weil "Zeigerwerte" eben nicht jedes Mal in "Arten" vorkommt. Also Zwei
Datenbanktabellen, eine Abfrage und ein Formular - dann musst Du auch
nicht immer darauf achten, dass ein Index eindeutig ist - das macht eine
Datenbank automatisch.


Hallo Robert,

danke für Deine Antwort. Die Daten stehen in zwei Tabellen, da das bei 
den Originaldaten (http://www.botanik.uni-greifswald.de/germanSL.html) 
leider so gegeben war, vermutlich eben weil es nicht für jede Art 
Zeigerwerte gibt.
Mit Base habe ich noch nie gearbeitet, daher war mein erster Gedanke 
Calc. Wie bekomme ich es denn mit einer Datenbanklösung unkompliziert 
hin? Ich schmeiß jetzt erst mal Google an, bin aber für Vorschläge offen!


Danke nochmals,

Simon

--
Informationen zum Abmelden: E-Mail an users+h...@de.libreoffice.org
Probleme? 
http://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert



[de-users] Re: Calc: Formeln bei Einfügen automatisch kopieren

2012-07-26 Thread Helmut Leininger
Hallo Franklin,

Es ist ein Makro (nicht auf meinem Mist gewachsen, ich kann nicht
nachvollziehen, woher ich es habe). Das Makro habe ich dann mit einem
Symbol (Symbolleiste) verknüpft.

==
rem --
' inserts a new row above the curent one
' and copies the formulas of the current row into it
sub InsertRowWithFormula
dim sRow
dim oRow
dim oSelection
dim oSheet
dim document   as object
dim dispatcher as object

rem --
rem get access to the document
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

oSelection = ThisComponent.CurrentSelection
sRow = oSelection.getRangeAddress.StartRow

oSheet = ThisComponent.CurrentController.getActiveSheet
oRow = oSheet.getRows().getByIndex(sRow)

' select whole row
ThisComponent.getCurrentController().select(oRow)

rem --
dispatcher.executeDispatch(document, ".uno:Copy", "", 0, Array())

rem --
dim args2(5) as new com.sun.star.beans.PropertyValue
args2(0).Name = "Flags"
args2(0).Value = "F"
args2(1).Name = "FormulaCommand"
args2(1).Value = 0
args2(2).Name = "SkipEmptyCells"
args2(2).Value = false
args2(3).Name = "Transpose"
args2(3).Value = false
args2(4).Name = "AsLink"
args2(4).Value = false
args2(5).Name = "MoveMode"
args2(5).Value = 0

dispatcher.executeDispatch(document, ".uno:InsertContents", "", 0, args2())

end sub


Grüße
Helmut
Am 25.07.2012 18:22, schrieb Franklin Schiftan:
> Hallo Helmut,
> 
> am 25.07.2012 um 17:57 Uhr schriebst Du:
> 
>> Habe bereits etwas gefunden.
> 
> Magst du uns nicht an deinen Erkenntnissen teilhaben lassen?
> 
>> Grüße
>> Helmut
> 
>   und tschüss
> 
> Franklin
> 
> 
> 
> 
>> Am 25.07.2012 17:15, schrieb Helmut Leininger:
>>> Hallo,
>>>
>>> Ich habe eine Tabelle, wo auch ein Bereich (Excel: Datenbank) definiert
>>> ist. In einigen Zellen einer Zeile habe ich Formeln.
>>>
>>> Nun hätte ich gerne, dass beim Einfügen einer neuen Zeile die Formeln
>>> der darüberliegenden Zeile in die entsprechenden Zellen der neuen Zeile
>>> kopiert werden, nicht aber die anderen Inhalte.
>>>
>>> Geht das?
>>>
>>> Vielen Dank
>>> Helmut
> 
> 
> 



-- 
Informationen zum Abmelden: E-Mail an users+h...@de.libreoffice.org
Probleme? 
http://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert



Re: [de-users] Re: Calc: Formeln bei Einfügen automatisch kopieren

2012-07-26 Thread Franklin Schiftan
Hallo Helmut,

am 26.07.2012 um 13:33 Uhr schriebst Du:

> Hallo Franklin,
> 
> Es ist ein Makro (nicht auf meinem Mist gewachsen, ich kann nicht
> nachvollziehen, woher ich es habe). Das Makro habe ich dann mit einem
> Symbol (Symbolleiste) verknüpft.

Vielen Dank  vielleicht kann man's ja später selber auch mal
gebrauchen ...

  und tschüss

Franklin




> 
> ==
> rem --
> ' inserts a new row above the curent one
> ' and copies the formulas of the current row into it
> sub InsertRowWithFormula
> dim sRow
> dim oRow
> dim oSelection
> dim oSheet
> dim document   as object
> dim dispatcher as object
> 
> rem --
> rem get access to the document
> document   = ThisComponent.CurrentController.Frame
> dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
> 
> oSelection = ThisComponent.CurrentSelection
> sRow = oSelection.getRangeAddress.StartRow
> 
> oSheet = ThisComponent.CurrentController.getActiveSheet
> oRow = oSheet.getRows().getByIndex(sRow)
> 
> ' select whole row
> ThisComponent.getCurrentController().select(oRow)
> 
> rem --
> dispatcher.executeDispatch(document, ".uno:Copy", "", 0, Array())
> 
> rem --
> dim args2(5) as new com.sun.star.beans.PropertyValue
> args2(0).Name = "Flags"
> args2(0).Value = "F"
> args2(1).Name = "FormulaCommand"
> args2(1).Value = 0
> args2(2).Name = "SkipEmptyCells"
> args2(2).Value = false
> args2(3).Name = "Transpose"
> args2(3).Value = false
> args2(4).Name = "AsLink"
> args2(4).Value = false
> args2(5).Name = "MoveMode"
> args2(5).Value = 0
> 
> dispatcher.executeDispatch(document, ".uno:InsertContents", "", 0, args2())
> 
> end sub
> 
> 
> Grüße
> Helmut
> Am 25.07.2012 18:22, schrieb Franklin Schiftan:
>> Hallo Helmut,
>> 
>> am 25.07.2012 um 17:57 Uhr schriebst Du:
>> 
>>> Habe bereits etwas gefunden.
>> 
>> Magst du uns nicht an deinen Erkenntnissen teilhaben lassen?
>> 
>>> Grüße
>>> Helmut
>> 
>>   und tschüss
>> 
>> Franklin
>> 
>> 
>> 
>> 
>>> Am 25.07.2012 17:15, schrieb Helmut Leininger:
 Hallo,

 Ich habe eine Tabelle, wo auch ein Bereich (Excel: Datenbank) definiert
 ist. In einigen Zellen einer Zeile habe ich Formeln.

 Nun hätte ich gerne, dass beim Einfügen einer neuen Zeile die Formeln
 der darüberliegenden Zeile in die entsprechenden Zellen der neuen Zeile
 kopiert werden, nicht aber die anderen Inhalte.

 Geht das?

 Vielen Dank
 Helmut


-- 
Informationen zum Abmelden: E-Mail an users+h...@de.libreoffice.org
Probleme? 
http://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert



Re: [de-users] Werte aus anderer Tabelle vorschlagen und ergänzen

2012-07-26 Thread Robert Großkopf
Hallo Simon,

mit dem Link kam ich nicht so ganz klar; da sind mehrere Sachen
downloadbar, unter anderem eine D-Base-Datenbank mit 7 Tabellen.
An jeder Stelle wird aber immer wieder von einer Datenbank geschrieben -
da wäre es ja blöd, das anders anzugehen.

Du kannst Dich natürlich jetzt intensiv mit Datenbanken beschäftigen
( http://de.libreoffice.org/hilfe-kontakt/handbuecher/ - da ist das
komplette Base-Handbuch etwas weiter unten zum Download.). Tatsächlich
wirst Du nicht alles brauchen, so dass sich die Seiten sehr schnell
reduzieren, wenn Du die Makrogeschichten, den SQL-Code und ähnliche
Sachen aus dem Anhang raus lässt. Dann geht es im Wesentlichen darum,
wie Tabellen aus einer Tabellenkalkulation in eine Datenbank befördert
werden können.

Wenn Der Weg Dir etwas steinig erscheint, dann melde Dich noch einmal -
und liefere einen direkten Link zu den Tabellenkalkulationsdateien, die
Du in eine Datenbank befördert haben willst.

Gruß

Robert

-- 
Informationen zum Abmelden: E-Mail an users+h...@de.libreoffice.org
Probleme? 
http://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert



Re: [de-users] Werte aus anderer Tabelle vorschlagen und ergänzen

2012-07-26 Thread Simon Stock

Am 26.07.2012 16:17, schrieb Robert Großkopf:

Hallo Simon,

mit dem Link kam ich nicht so ganz klar; da sind mehrere Sachen
downloadbar, unter anderem eine D-Base-Datenbank mit 7 Tabellen.
An jeder Stelle wird aber immer wieder von einer Datenbank geschrieben -
da wäre es ja blöd, das anders anzugehen.

Du kannst Dich natürlich jetzt intensiv mit Datenbanken beschäftigen
( http://de.libreoffice.org/hilfe-kontakt/handbuecher/ - da ist das
komplette Base-Handbuch etwas weiter unten zum Download.). Tatsächlich
wirst Du nicht alles brauchen, so dass sich die Seiten sehr schnell
reduzieren, wenn Du die Makrogeschichten, den SQL-Code und ähnliche
Sachen aus dem Anhang raus lässt. Dann geht es im Wesentlichen darum,
wie Tabellen aus einer Tabellenkalkulation in eine Datenbank befördert
werden können.

Wenn Der Weg Dir etwas steinig erscheint, dann melde Dich noch einmal -
und liefere einen direkten Link zu den Tabellenkalkulationsdateien, die
Du in eine Datenbank befördert haben willst.

Gruß

Robert


Hallo Robert,

ja, genau aus diesen 7 Tabellen habe ich meine Daten. Genauer gesagt: 
die species.dbf (gekürzt auf die Spalten A, D und E, wobei alle Zeilen 
bei denen in Spalte G ein WAHR steht wegfallen) ist meine Arten.ods und 
die ecodbase.dbf (gekürzt auf die Spalten A, D, F, H, J, M und O) ist 
meine Zeigerwerte.ods, ich kann die beiden leider gerade nirgendwo hoch 
laden.
Ich wollte jetzt eigentlich nicht gleich zum Base Guru werden nur um 
meine Artenliste zu erstellen, daher war ja mein erster Gedanke auch 
Calc. Wenn es damit einfacher gehen sollte (die beiden Tabellen habe ich 
ja schon) würde ich diese Lösung auch bevorzugen, ich habe nur keinen 
blassen Schimmer wie ich das anstellen soll. Eine Datenbanklösung hätte 
natürlich den Vorteil, dass ich in Zukunft einfach immer die aktuelle 
GermanSL herunterladen und nicht großartig bearbeiten müsste um sie zu 
nutzen (die Taxonomie ändert sich regelmäßig und hin und wieder kommen 
auch mal Arten dazu).


Besten Gruß,

Simon

--
Informationen zum Abmelden: E-Mail an users+h...@de.libreoffice.org
Probleme? 
http://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert



Re: [de-users] Werte aus anderer Tabelle vorschlagen und ergänzen

2012-07-26 Thread Robert Großkopf
Hallo Simon,

ich habe die beiden Abfragen einmal erstellt, die zu Deinen Tabellen
führen. Nur finde ich kein Feld, das aufzeigt, wie die Tabellen denn nun
zusammenhängen sollen. Also: Wie hängen Zeigerwerte und Arten zusammen?
Vielleicht nennst Du besser die Spaltenbeschriftungen statt die Ziffern
A,B usw. So steht in der Tabelle in Base z.B. "SPEZIES_NR", "ABBREVIAT"
und "NATIVENAME".

Das kriegen wir schon hin. Du brauchst da gar nicht zum "Guru" zu werden.

Gruß

Robert

-- 
Informationen zum Abmelden: E-Mail an users+h...@de.libreoffice.org
Probleme? 
http://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert



AW: [de-users] Werte aus anderer Tabelle vorschlagen und ergänzen

2012-07-26 Thread Marcus Hoffmann
Hallo Simon,

ich  bin zwar ein Verfechter von Datenbanklösungen (-wo sinnvoll und
angemessen-), hätte jedoch bei deiner Aufgabenstellung auch mal lieber
schnell zu Calc gegriffen.

Am besten, du kopierst die "Nachschlage-" Tabellen in Blatt 2 und 3 des
Calc-Files, in dem du auf Blatt 1 damit arbeiten möchtest.
In der ersten Spalte solllte jeweils der Wert der Zeile stehen, mit dem du
dann nachschlagen möchtest; in deinem Bsp. Achillea.

Vielleicht kannst du dir ja Blatt 3 wirklich sparen, wenn du die Tabellen
zusammenkopieren kannst.

Aus der Nachschlagetabelle würde ich dann einen benannten Zellbereich
machen, der leichteren Handhabung wegen.
Das geht so: Markiere alle Zellen, die die Tabelle bilden (z.B. A1:H365),
klicke dann in den Bereich oberhalb der Tabelle links, in dem der
Zellbereich steht und schreibe z.B. Nachschlag hinein; den Zellbereich
kannst du dann mit dem Namen ansprechen.

Jetzt brauchst du für alle Werte, die in Blatt 1 automatisch entstehen
sollen, nur noch einen "sverweis", der z.B. auf Spalte A "lauscht" und in
"Nachschlag" schaut.

z.B. willst du in B1 den zu einem in A1 eingegebenen Wert zugehörigen Wert
aus der 4.Spalte der Nachschlagtabelle holen:
in B1 steht dann  =sverweis(A1;Nachschlag;4;0)

Diese Formel kannst du nun beliebig in Spalte B nach unten kopieren.
Um hässliche Fehlerwerte in Zeilen zu vermeiden, die in A noch nichts stehen
haben, umbaust du deine Formel noch mit "wenn()":
   =wenn(A1="";""; sverweis(A1;Nachschlag;4;0))

schau dir am besten mal die Hilfe zu sverweis an.

> Ich wollte jetzt eigentlich nicht gleich zum Base Guru werden nur um meine
Artenliste zu erstellen, daher war ja mein erster Gedanke auch Calc. 
> Wenn es damit einfacher gehen sollte (die beiden Tabellen habe ich ja
schon) würde ich diese Lösung auch bevorzugen, ich habe nur keinen 
> blassen Schimmer wie ich das anstellen soll. Eine Datenbanklösung hätte
natürlich den Vorteil, dass ich in Zukunft einfach immer die aktuelle
> GermanSL herunterladen und nicht großartig bearbeiten müsste um sie zu
nutzen (die Taxonomie ändert sich regelmäßig und hin und wieder 
> kommen auch mal Arten dazu).

Gruß,
Marcus


-- 
Informationen zum Abmelden: E-Mail an users+h...@de.libreoffice.org
Probleme? 
http://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert