Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
996to1000
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

Problem mit print #1

Problem mit print #1
29.07.2008 16:22:21
JStadler
Hallo liebe Leute,
ich hab da ein kleines Problemchen.
Ich muß Text aus einem Excel-Sheet in eine Textdatei schreiben. Wichtig hierbei ist, dass verschiedene Textteile auf verschiedenen Spalten stehen sollen. Zur Verfügung habe ich die Anzahl der Textbausteine (variabel), den Ort der Textbausteine im Excel-Sheet, sowie die Spaltennummern, auf denen die jeweiligen Textbausteien in der Textdatei stehen sollen.
Von der Syntax her müsste der Print-Befehl doch in etwa so lauten:
Print #1, Tab(1) ; textbaustein(1) ; Tab(20) ; textbaustein(2) ; Tab(35) ; textbaustein(3) ; Tab(n) ; textbaustein(n)
Das Problem ist nun, dass die Zahl der Textbausteine variabel ist. Wie kann ich dem Print-Befehl am Besten eine variable Anzahl von Textbausteinen zuweisen? Ich habs über eine zweite Variable versucht, die ich über eine For-Next-Schleife mit Text befülle. Leider hat das aber nicht geklappt, weil ich ja dem Print-Befehl auch die zum Textbaustein gehörige Tab-Position übergeben muß.
Bitte um Hilfe
Vielen Dank im Voraus
Johannes

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Problem mit print #1
29.07.2008 16:25:00
Rudi
Hallo,

ich hab da ein kleines Problemchen.


Ich auch. Ich verstehe nur Bahnhof.
Gruß
Rudi

AW: Problem mit print #1
29.07.2008 16:51:00
JStadler
ok., dann versuch ichs nochmal anders:
ich habe ein Sheet, in dem ID´s und bestimmte, dazugehörige Texte oder Nummern stehen, z.B. so (grob vereinfacht):
ID-------Text1----------Text2----------Text3----------Text4
1---------123------------abc-------------934------------xyz
2--------hallo------------bla--------------888
3---------554------------678
...---------...--------------...----------------...--------------...
Daraus will ich eine Textdatei generieren in der vom Prinzip her alles genauso stehen soll wie oben, nur mit der Schwierigkeit, dass die entsprechenden Texte in der Textdatei auf vorher abgefragten, genau definierten Spalten stehen sollen (also z.B. die ID auf Spalte 10, Text1 auf Spalte 25, Text2 auf Spalte 34 etc.)
Darüberhinaus ist die Anzahl der Textbausteine variabel, d.h., eine ID kann nur 2 Textspalten haben, genausogut aber auch 99.
Wurde das Problem damit klarer?
Viele Grüße
Johannes

Anzeige
AW: Problem mit print #1
29.07.2008 16:52:00
JStadler
sorry, Frage natürlich noch offen

AW: Problem mit print #1
29.07.2008 17:35:00
Rudi
Hallo,

genau definierten Spalten stehen sollen (also z.B. die ID auf Spalte 10, Text1 auf ...


wie wird das definiert?
Lass dir nicht die Würmer einzeln aus der Nase ziehen. Das macht keinen Spaß.
Du solltest berücksichtigen, dass wir nicht in deinen Schädel schauen können.
Gruß
Rudi

AW: Problem mit print #1
29.07.2008 18:32:56
JStadler
Die Spalten werden vom jeweiligen Benutzer (und anschließendem Weiterverarbeiter der Textdatei) vorgegeben. Dies wird über einen Dialog abgefragt.
Das ergibt dann zum Beispiel, dass der Inhalt der Excel-Spalte BA in der Textdatei auf Spalte 20 stehen muß, Excel-Spalte BX auf Textdatei-Spalte 35 und Excel-Spalte CD auf Textdatei-Spalte 39 etc.
wie gesagt ist mir die Grundidee von print # geläufig, aber die Anwendung im konkreten Fall ist mir nicht klar.
Eine Lösungsmöglichkeit wäre evtl. eine Select-Case-Anweisung nach dem Muster:
select case 'Anzahl der Textbausteine'
case 1
print #1 Tab(10) ; Textbaustein1
case 2
print#1 Tab(10) ; Textbaustein1 ; Tab(20) ; Textbaustein2
case 3
print#1 Tab(10) ; Textbaustein1 ; Tab(20) ; Textbaustein2 ; Tab(35) ; Textbaustein3
case...

Leider können wie gesagt bis zu 100 Textbausteine vorkommen und dadurch wird die Select-Case-Geschichte ein wenig unübersichtlich ;)
Irgendwie muss ich es doch schaffen können, die print#-Anweisung variabel zu gestalten. Dies ginge ja auch über eine String-Variable, in der ich die einzelnen Textbausteine einfach per Schleife aneinanderreihe. Das Problem ist aber wie gesagt, dass ich ja zusätzlich die entsprechenden Spalten zuweisen muß.

Anzeige
AW: Problem mit print #1
29.07.2008 18:33:32
JStadler
sorry, ich bin einfach zu blöd, die Frage offen zu halten

AW: Problem mit print #1
29.07.2008 19:09:00
Erich
Hallo Johannes,
du kannst dir den Ausgabestring auch ohne Tab() selbst zusammenbauen und hast dabei alle Freiheiten,
kannst das z. B. in einer Schleife tun.
Probier mal

Sub tst()
Dim TT As String
Open "c:\temp\xtsty.txt" For Output As #1
Print #1, "123456789.123456789.123456789.123456789."
Print #1, Tab(5); "5aaa5"; Tab(20); "20bbb20"; Tab(35); "35ccc35"
TT = String(4, " ") & "5AAA5"
TT = TT & String(19 - Len(TT), " ") & "20BBB20"
TT = TT & String(34 - Len(TT), " ") & "35CCC35"
Print #1, TT
Close
End Sub

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

Anzeige
AW: Problem mit print #1
29.07.2008 21:51:00
JStadler
vielen Dank für den Vorschlag,
klasse, da hab ich noch gar nicht dran gedacht. Wird gleich morgen früh ausprobiert, dann melde ich mich wieder.
Aber jetzt erstmal vielen Dank nochmal und bis morgen aus der Arbeit ;)
Schönen Abend
Johannes

AW: Problem mit print #1
30.07.2008 09:35:00
JStadler
Hey, das funktioniert super. Ich arbeite doch irgendwie immer wieder mit der Devise "warum einfach, wenns umständlich auch geht" ;)
Da ist das Forum hier echt immer der Augenöffner. Ganz dickes Lob.
Vielen Dank für den Tip und einen schönen Tag
Johannes

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige