Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » Allgemeines (OffTopic) » Zellentext verbinden

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 < [ 2 ]
000
13.06.2007, 20:30 Uhr
Lensflare



Hallo.

Ich benutze die Tabellenkalkulation von OpenOffice.

Weiss jemand, wie ich den Text von mehreren Zellen (also nicht die Formeln, sondern das was als Ergebnis herauskommt) in eine Zelle bekomme?

Ich habs mit

Code:
=VERKETTEN(D2:I2)

probiert aber es kommt immer das dabei raus:

Code:
#WERT!


Ich könnte evtl. auch mit einer Lösung für MS Excel was anfangen.

Danke
--
Wenn das Gehirn so einfach wäre, dass wir es verstehen könnten, wären wir so einfach, dass wir es nicht verstehen könnten.
(Emerson Pugh Trost)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
13.06.2007, 21:32 Uhr
öni



hmm ich kenne mich weder mit Tabellen Kalkulation noch mit OpenOffice aus aber mein Win Office 2007 sagt: Anstelle von VERKETTEN kann der Operator "&" verwendet werden, um als Zeichenfolgen vorliegende Elemente miteinander zu verbinden. Beispielsweise gibt =A1&B1 denselben Wert zurück.
Weis nicht ob dir das weiter hilft oder ob es beim OpenOffice geanuso ist? Allerdings kann ich mir vorstellen das du vielleicht ungültige Werte miteinader Verketten möchtest?

Zitat :VERKETTEN (Text1;Text2; ...)

Text1; Text2; ... sind 2 bis 255 Argumente, die Zeichenfolgen (Texte) angeben, die zu einer Zeichenfolge verbunden werden sollen. Als Argumente dürfen Zeichenfolgen (Texte), Zahlen und Bezüge auf einzelne Zellen verwendet werden.

Gibts du auch mehr wie 2 Argumente zum Verketten frei?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
13.06.2007, 21:45 Uhr
Lensflare



den Operator "&" kenne ich, allerdings kann man damit immer nur jeweils 2 zellen verbinden.
Also 255 Zellen mit 254 "&"s zu verbinden ist nicht so toll

VERKETTEN() scheint so eine Art Präfix-Version von "&" zu sein, aber da müsste ich auch die Zellen einzeln eingeben/anklicken.


Code:
=VERKETTEN(D2;E3;E4)   --> geht
=VERKETTEN(D2:I2)   --> geht nicht



Was komisch ist, denn Bei

Code:
=SUMME(D2:I2)

kann man einen bereich "von bis" angeben.
--
Wenn das Gehirn so einfach wäre, dass wir es verstehen könnten, wären wir so einfach, dass wir es nicht verstehen könnten.
(Emerson Pugh Trost)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
13.06.2007, 23:17 Uhr
öni



www.traum-projekt.com/forum/66-betriebssysteme/40850-excel-funktion-verketten.html

Noch keine Patenlösung aber vielleicht ist es einfach nicht vorgesehn im ganzen Internet verketten die nur Dinge mit 2 Zellen als würde der Mensch nicht mehr brauchen.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
13.06.2007, 23:20 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


an sonsten halt nen kleines Makro...
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
14.06.2007, 00:02 Uhr
0xdeadbeef
Gott
(Operator)


Naja - es stellt sich ein bisschen die Frage, in welcher Reihenfolge denn verkettet werden soll. Zuerst von oben nach unten, oder von links nach rechts, oder vielleicht nochmal ganz anders? Da wirste dir schon ne eigene Funktion für schreiben müssen, z.B.

Code:
Function Concat_2D(rg As Variant) As String
    If Not IsArray(rg) Then
        Exit Function
    End If

    Dim i as Integer, j as Integer
    Dim str As String
    
    For i = LBound(rg, 1) To UBound(rg, 1)
        For j = LBound(rg, 2) To UBound(rg, 2)
            str = str & rg(j, i)
        Next j
    Next i
    
    Concat_2D = str
End Function


--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra

Dieser Post wurde am 14.06.2007 um 00:05 Uhr von 0xdeadbeef editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
14.06.2007, 00:38 Uhr
Lensflare




Zitat von Windalf:
an sonsten halt nen kleines Makro...

Ich hab noch nie was mit Makros gemacht. Wie könnte so ein Makro aussehen?


Zitat von 0xdeadbeef:
Naja - es stellt sich ein bisschen die Frage, in welcher Reihenfolge denn verkettet werden soll. Zuerst von oben nach unten, oder von links nach rechts, oder vielleicht nochmal ganz anders?

Nur von oben nach unten, einspaltig.


Zitat von 0xdeadbeef:
Da wirste dir schon ne eigene Funktion für schreiben müssen, z.B

Wo kann ich diese Funktion schreiben? Ich hab nichts gefunden, wo ich Funktionen hinzufügen oder selbst erstellen kann.
--
Wenn das Gehirn so einfach wäre, dass wir es verstehen könnten, wären wir so einfach, dass wir es nicht verstehen könnten.
(Emerson Pugh Trost)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
14.06.2007, 01:01 Uhr
0xdeadbeef
Gott
(Operator)


Extras -> Makros

Das Ding da bastelt den Kram von links nach rechts, dann von unten nach oben zusammen. Für einspaltige Bereiche macht das aber keinen Unterschied.
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
14.06.2007, 02:55 Uhr
Lensflare



Ich habe jetzt folgendes gemacht:

Extras -> Makros -> Makros verwalten -> OpenOffice.org Basic

Meine Makros -> Standard -> Module1 -> "Bearbeiten"


Code:
REM  *****  BASIC  *****

Sub Main

End Sub


die funktion hinzufügen

Code:
REM  *****  BASIC  *****

Function Concat_2D(rg As Variant) As String
    If Not IsArray(rg) Then
        Exit Function
    End If

    Dim i as Integer, j as Integer
    Dim str As String
    
    For i = LBound(rg, 1) To UBound(rg, 1)
        For j = LBound(rg, 2) To UBound(rg, 2)
            str = str & rg(j, i)
        Next j
    Next i
    
    Concat_2D = str
End Function

Sub Main

End Sub



Ist das richtig?
"Basic Programm ausführen" geht nicht:

Code:
Basic Laufzeitfehler. Argumet ist nicht optional

zeigt auf diese Zeile:

Code:
If Not IsArray(rg) Then


die funktion Concat_2d ist auch nicht in der liste aller funktionen zu finden.
--
Wenn das Gehirn so einfach wäre, dass wir es verstehen könnten, wären wir so einfach, dass wir es nicht verstehen könnten.
(Emerson Pugh Trost)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
14.06.2007, 04:16 Uhr
0xdeadbeef
Gott
(Operator)


Ist auch kein Wunder, dass sich die nicht ausführen lässt, ist ja kein sub, sondern eine Funktion. Du musst schon in dein sheet

Code:
=Concat_2D(A1:A5)


schreiben. Oder was halt grad dein Bereich ist.
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ]     [ Allgemeines (OffTopic) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: