nun muss ich noch E11 bis E20 und E21 bis E27 usw. zusammen legen.
Habe ich die Möglichkeit die betreffenden Zellen mit "runter ziehen" zu definieren, da ich ja immer unterschiedliche Anzahl von Zellen zusammen legen muss? Oder muss ich die Zellen einzeln von Hand eingeben?
die unterschiedliche Anzahl der Zellen macht das etwas problematischer.
Ich würde eher mit der folgende benutzerdefinierten Funktion arbeiten
Code:
Function Verketten2(ByRef bereich As Range, Trennzeichen As String) As String Dim rng As Range For Each rng In bereich If rng <> "" Then Verketten2 = Verketten2 & rng & Trennzeichen End If Next If Len(Verketten2) > 0 Then _ Verketten2 = Left(Verketten2, Len(Verketten2) - Len(Trennzeichen)) End Function
und dann die Zellen mit
=Verketten2(E2:E10;" ")
verketten.
Gruß Peter
Folgende(r) 1 Nutzer sagt Danke an Peter für diesen Beitrag:1 Nutzer sagt Danke an Peter für diesen Beitrag 28 • Jeeper
du musst eigentlich nur den Code in ein allgemeines Modul der Datei kopieren damit XL diese benutzerdefinierte Funktion kennt.
- Öffne mit Alt+F11 den VBA-Editor - mit Strg+R den Projekt-Explorer öffnen und aktivieren - die gewünschte Datei per Doppelklick markieren - Tastenkombination Alt+E und dann M drücken - in der rechten Fensterhälfte ist jetzt ein leeres Modul eingefügt worden - in dieses Modul muss der Code eingefügt werden - im Projektexplorer wird das Modul unter der Datei angezeigt - speichen und den VBA-Editor mit Alt+F4 schliessen
Die Funktion steht dir jetzt in dieser Datei zur Verfügung und du kannst die Funktion wie eine 'normale' Formel in die Zelle eintragen.
Gruß Peter
Folgende(r) 1 Nutzer sagt Danke an Peter für diesen Beitrag:1 Nutzer sagt Danke an Peter für diesen Beitrag 28 • Jeeper
Und ich meine, dass der TE mit einer Zeilenschaltung verketten wollte. (Ich weiß, dass das eine andere Baustelle ist als die aktuelle ...) Aber für den einen oder anderen Mitleser vielleicht hilfreich.
Beste Grüße Günther
Excel-ist-sexy.de …schau doch mal rein! Der Sicherheit meiner Daten wegen lade ich keine *.xlsm bzw. *.xlsb- Files mehr herunter! -> So geht's ohne!
ich kann das Verhalten bei mir nicht nachvollziehen.
Die Fehlermeldung #Name erscheint eigentlich dann wenn XL den Funktionsnamen nicht kennt, d.h. wenn die Funktion nicht in einem allgemeinen Modul steht, oder der Funktionsname falsch geschrieben wird.
Allerdings lässt das
Zitat:bekomme gei eingabe von "=verk...) verkettung2 angezeigt, wähle diese mit TAB aus und bekomm sofort die o.g. Fehlermeldung
darauf schließen, dass der Code im richtigen Modul steht.
Wie sind denn die Sicherheitseinstellungen (Datei - Optionen - Trust Center - Einstellungen für das Trust Center)? Ändert sich da etwas wenn du testweise auf den untersten Punkt gehst (Alle Makros aktivieren...)?
Was passiert denn wenn du testweise eine neue Datei erstellst, den Code dort in ein allgemeines Modul kopierst, in A1 bis A10 Werte einträgst und dann in B1 die Formel =Verketten2(A1:A10;" ,") eingibst?
Gleiche Fehlermeldung?
Wenn ja, dann lade diese von dir erstelle Beispielsdatei mal hoch damit man sich das ansehen kann.
Gruß Peter
Folgende(r) 1 Nutzer sagt Danke an Peter für diesen Beitrag:1 Nutzer sagt Danke an Peter für diesen Beitrag 28 • Jeeper