Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1184to1188
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA: Verkettete Strings in neues Excel File

VBA: Verkettete Strings in neues Excel File
Balu
Hallo Forum,
Für jeden der a bisserl VBA kann ist das wohl ne einfache Sache aber ich bin einfach zu blöd für.
Folgendes.
In Spalte A stehen Strings die ich mit einem , verkette
In Spalte B stehen Strings die ich mit einem ; verkette
In Spalte B stehen Strings die ich mit einem --) verkette
usw.. bis Spalte O
Fragt nicht warum die Trennzeichen so unterschiedlich sind, das Nachfolgesystem kann die halt nur so verarbeiten - ansonsten würde ich über eine Schleife gehen
Ich habe also folgende Formel von A bis O (hier Beispiel A)
Dim c As Range, tmp As String
For Each c In Range("A2:A100")
If c  "" Then
tmp = tmp & c & ","
End If
Next
tmp = Left(tmp, Len(tmp) - 1)
[A101] = tmp
tmp = ""
(1) Wenn in der Spalte keine Werte stehen bekomme ich eine Fehlermeldung die ich nicht abfangen kann. Ohne die if Anweisung malt mir das Program aber für jede Zelle ein Trennzeichen (auch wenn sie nicht befüllt ist)
(2) Gibt es eine intelligente Lösung all diese Werte in ein Array zu schreiben? Denn eigentlich will ich die verketteten Werte inkl. Überschriftenzeile (A1, B1, C1,..) in eine neues Excelfile mit dem Originalnamen + Zusatz "merged" schreiben lassen.
Meine Versuche waren - mal wieder - fürn Hintern.
Workbook.Add
filesavename = Left(ActiveWorkbook.FullName, _
InStrRev(ActiveWorkbook.FullName, ("."), -1) - 1)
filesavename = filesavename & "merged" & _
Mid(ActiveWorkbook.FullName, InStrRev(ActiveWorkbook.FullName, (".")))
ActiveWorkbook.SaveAs (filesavename)
Danke euch Schon mal im Vorraus!!!!!!!

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: VBA: Verkettete Strings in neues Excel File
05.11.2010 07:19:18
ede
Guten Morgen,
Fall 1 kannst du so agfangen, weil wenn leer, dann macht -1 keinen Sinn:
If Len(tmp) > 1 Then tmp = Left(tmp, Len(tmp) - 1)
Fall 2 kann man auch machen, aber warum verketten und dann wieder in ein Excelfile, macht doch keinen Sinn!
Gruss
Danke
08.11.2010 10:21:27
Balu
Danke! Funktioniert tadellos. Wie schon gesagt, frag nicht nach der Sinnigkeit. Es geht um die Weiterverarbeitung eines Datenbankauszuges für eine Folgesystem dass die Daten halt genau so brauch.
Grüße, Balu
Anzeige

311 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige