CALC: Listenfeld, Mehrfachselektion in 1 Zelle schreiben
Verfasst: So, 27.05.2012 15:11
Hallo zusammen,
ich habe für mich und meine Kollegen ein Formular zur Vereinfachung von Therapiedokumentationen entworfen. Dabei habe ich bisher mit Kombinationsfeldern gearbeitet. Jetzt kam der Wunsch nach einer Mehrfachselektion auf. Das geht meines Wissens nach nur mit Listenfeldern. Es ist mir auch gelungen in das Formular ein Listenfeld mit Mehrfachselektion einzubauen und mit den gewünschten Werten zu füllen. Woran ich leider scheitere ist der Übertrag der ausgewählten Werte in die entsprechende Zelle. Ein einfaches Umschreiben des Macros wo ich Combobox mit Listbox ersetzt habe funktioniert nicht. Er gibt als Fehlermeldung "Eigenschaft oder Methode nicht gefunden: text" zurück. Ich kopiere mal das ursprüngliche Macro, dass mit den Kombinationsfelder wie gewünscht funktioniert hier rein.
Über etwas Unterstützung durch die Könner würde ich mich sehr freuen.
Bianca Orth
Moderation,4: verschoben in BASIC-Unterbereich, wo alle Makro-Fragen hin gehören; Betreff angepasst; CODE tags gesetzt
ich habe für mich und meine Kollegen ein Formular zur Vereinfachung von Therapiedokumentationen entworfen. Dabei habe ich bisher mit Kombinationsfeldern gearbeitet. Jetzt kam der Wunsch nach einer Mehrfachselektion auf. Das geht meines Wissens nach nur mit Listenfeldern. Es ist mir auch gelungen in das Formular ein Listenfeld mit Mehrfachselektion einzubauen und mit den gewünschten Werten zu füllen. Woran ich leider scheitere ist der Übertrag der ausgewählten Werte in die entsprechende Zelle. Ein einfaches Umschreiben des Macros wo ich Combobox mit Listbox ersetzt habe funktioniert nicht. Er gibt als Fehlermeldung "Eigenschaft oder Methode nicht gefunden: text" zurück. Ich kopiere mal das ursprüngliche Macro, dass mit den Kombinationsfelder wie gewünscht funktioniert hier rein.
Code: Alles auswählen
Private Sub OKButton_Click()
Dim art As String
DIM dat As Date
DIM beschr As String
DIM oCell as Object
Dim oDoc As Object
Dim oSheet As Object
Dim oForm As Object
Dim oComboBox As Object
Dim oDateField As Object
Dim lauf as Variant
oDoc = ThisComponent
oSheet = oDoc.Sheets.GetByName("Formular")
oForm = oSheet.DrawPage.Forms.GetByName("Standard")
oDateField = oform.getByName("oDateFieldDatum")
dat = CDateFromIso(oDateField.date)
oSheet = oDoc.Sheets.GetByName("Formular")
oForm = oSheet.DrawPage.Forms.GetByName("Standard")
oComboBox = oform.getByName("oComboBoxBeschreibung")
beschr = oComboBox.text
oSheet = oDoc.Sheets.GetByName("Formular")
oForm = oSheet.DrawPage.Forms.GetByName("Standard")
oComboBox = oform.getByName("oComboBoxBeschreibung2")
beschr2 = oComboBox.text
oSheet = oDoc.Sheets.GetByName("Formular")
oForm = oSheet.DrawPage.Forms.GetByName("Standard")
oComboBox = oform.getByName("oComboBoxBeschreibung3")
beschr3 = oComboBox.text
oSheet = oDoc.Sheets.GetByName("Formular")
oForm = oSheet.DrawPage.Forms.GetByName("Standard")
oComboBox = oform.getByName("oComboBoxBeschreibung4")
beschr4 = oComboBox.text
oDocument=ThisComponent
oSheet=oDocument.Sheets.getByName("Verlaufsdokumentation")
Cursor = oSheet.createCursor()
Cursor.gotoEndOfUsedArea (true)
Zeile = Cursor.getRangeAddress().EndRow
oCell=oSheet.getCellByPosition(0, Zeile+1)
oCell.value = dat
oCell=oSheet.getCellByPosition(1, Zeile+1)
oCell.String = beschr
oCell=oSheet.getCellByPosition(1, Zeile+2)
oCell.String = beschr2
oCell=oSheet.getCellByPosition(1, Zeile+3)
oCell.String = beschr3
oCell=oSheet.getCellByPosition(1, Zeile+4)
oCell.String = beschr4
End Sub
Bianca Orth
Moderation,4: verschoben in BASIC-Unterbereich, wo alle Makro-Fragen hin gehören; Betreff angepasst; CODE tags gesetzt