String aus Datenfeld lesen, geht das einfacher?

Hallo,

einige 2 oder 3 Artikel vorher hat Reinhard mir geholfen, aus einer alten Ascii Datei Texte in Excel-Zellen zu übertragen. Die Texte wurden damals mit TurboPascal über „Records“ angelegt, haben also pro Record eine feste Struktur.

@Reinhard: ich habe inzwischen mit „type“ einen Datensatz angelegt, der die gleiche Struktur hat, wie der damalige Record, also gleich viele Variablen (Strings) mit jeweils entsprechenden Längen:

Type Datensatz
Haupt As String * 36
Titl As String * 36
Inf1 As String * 26
Art As String * 2
usw.

Deklaration: Dim Dsatz1 as Datensatz

Dazu habe ich den Lesebefehl von „binary“ wie folgt geändert:

Open Datei For Random As #1 Len = Len(Dsatz1)
Get #1, Posi, Dsatz1
Close #1

Posi gibt an, welcher Satz gelesen wird. Das funktioniert klasse, ABER:

Der gelesene Satz „Dsatz1.Haupt“ ist 36 Zeichen lang (siehe Type-Deklaration), davon ist das 1.Zeichen die echte Wortlänge, also nicht die möglichen 35 Zeichen. Bei dem damaligen Turbo Programm wurden diese Sätze in Echtlänge in den Speicher gesetz, der nicht leer sein mußte. Somit sind die restlichen Zeichen bis hin zur Stelle 35 oftmals von Alteinträgen belegt und nicht von Leerstellen. So sehen meine gelesenen Daten dann teilweise auch aus.
Ich habe das Problem wie folgt gelöst:

k = Asc(Left(Dsatz1.Haupt, 1))
.Cells(Zeile, 2) = Mid(Dsatz1.Haupt, 2, k) 'Haupttitel
k = Asc(Left(Dsatz1.Titl, 1))
.Cells(Zeile, 3) = Mid(Dsatz1.Titl, 2, k) 'Einzeltitel

Die Daten werden direkt in die Zellen der offenen Excel-Datei eingetragen.

Meine Frage ist: gibt es eine elegantere Methode, einen String mit seiner echten Länge aus einem Feld zu lesen. Meines Wissens nach ist ein String immer so aufgebaut, daß die echte Länge das 1. Zeichen darstellt (oder war das früher so, als die Wortlänge noch begrenzt war?)

Gruß
Pauli

Hallo Pauli,

Type Datensatz
Haupt As String * 36
Titl As String * 36
Inf1 As String * 26
Art As String * 2
usw.

das usw. kann ich nicht deuten, die komplette Type Deklaration
oder ist das Definition?, wäre da hilfreich.

Open Datei For Random As #1 Len = Len(Dsatz1)
Get #1, Posi, Dsatz1
Close #1

Irschendwie haste was gegen mein „binary“ *grien*

btw, soll das i in Posi für Integer stehen? Bei langen Codes macht es schon großen Sinn im Variablennamen den Typ mitanzugegeben.
Bei sehr sehr großen Codes auch die Gültigkeit der variablen, also
global, nur in dem Modul u.ä.
Wie auch immer, ich würde wenn schon das intPos benennen.
Siehe Google und ungarische Notation.

Meine Frage ist: gibt es eine elegantere Methode, einen String
mit seiner echten Länge aus einem Feld zu lesen. Meines
Wissens nach ist ein String immer so aufgebaut, daß die echte
Länge das 1. Zeichen darstellt (oder war das früher so, als
die Wortlänge noch begrenzt war?)

Wenn du selbst eine Textdatei mit zigmal einem deklarierten
Datensatz so brauchst du doch nicht die Länge der Einzeldinger.
Das regelt sich doch wenn du analog wieder in eine Variable
einliest die als Datensatz deklariert wurde.

Annerster sieht der Fall aus wenn eine Textdatei vorliegt, z.B.
aus TP mit deren „Regeln“.
Da muss man, ggfs. mit einem Hexeditor schauen wie die denn
strukturiert ist.
Ich erlebte da schon Fremddateien die hatten als Zeilentrenner
2mal Chr(13) und 1 mal Chr(10).

Da ging mein Auslesen schief da ich codiert hatte vbCRLF
zu beachten und beim Auslesen ggfs. „rauszuwerfen“.
Denn ein chr(13) blieb störend übrig.
Also ich rechne bei fremden Textdateien mit allem.

Zu deinem Anliegen. Bitte lade eine entsprechend gefüllte Textdatei
hoch. Alternativ wie ich, zeige Code womit man sie so befüllt
wie du das willst.
Dazu noch deinen aktuellen Code mit dem du sie ausliest.

Zu Random und Binary, wie gesagt, so ganz genau bis ins Detail
weiß ich wenig, warum auch, ich brauche das äußerst selten.
An dem Binary-Code (von rainer, weil ich nie weiß wie da die genaue
Syntax ist *gg*) mag ich daß er Dateien auf einen Rutsch einliest.

Dann habe ich sie im Arbeitsspeicher und bin dann dort sicher
schneller im Zugriff auf alle Datensätzen als du mit ner Random-
Schleife.

Kann zeitlich ggfs. anders aussehen wenn man einzig den 567 ten
Datensatz aus der Datei braucht, k.A.

Gruß
Reinhard

Hallo Reinhard,
danke für Deine Antwort.

Hallo Pauli,

Type Datensatz
Haupt As String * 36
Titl As String * 36
Inf1 As String * 26
Art As String * 2
usw.

das usw. kann ich nicht deuten, die komplette Type Deklaration
oder ist das Definition?, wäre da hilfreich.

das usw. steht da, weil es im Prinzip so weiter geht. Der ganze Datensatz besteht aus 13 einzelnen Variablen, die ich hier nicht alle aufführen wollte. Geschrieben hatte ich damals die Daten unter Windows 3.11. Wenn eine String-Variable mit z.B. Länge 35 deklariert war, ich aber nur ein Wort von 10 Zeichen Länge eingetragen hatte, fand ich in der gespeicherten Datei, die ich mir mit einem Hex-Editor (damals Debug) ansah, in den restlichen 25 Stellen statt Leerstellen (#20) irgendwelche Zeichen, die von vorherigen Einträgen stammten. So ist die Datei dann bis heute geblieben.
Wenn ich jetzt also die 35 Zeichen des Strings auslese, bekomme ich diesen Müll mit, es sei denn, ich lese nur die echte Länge, die ja im ersten Byte angegeben ist.
Ist das so rübergekommen, wie ich das meine?
Das Problem mit dem korrekten Lesen habe ich nun ja gelöst, indem ich zuerst die Variable mit ihren 36 Byte aus dem Datenfeld lese und dann mit Hilfe des 1. Byte die echte Länge bestimme. Mit der „Mid(…)“-Anweisung wird dann nur der gültige Text bestimmt.
Dieses Verfahren gilt dann für alle 13 Variablen des Datenfeldes.

Open Datei For Random As #1 Len = Len(Dsatz1)
Get #1, Posi, Dsatz1
Close #1

Irschendwie haste was gegen mein „binary“ *grien*

Nein, nur habe ich ausprobiert, daß das Lesen eines einzelnen Datensatzes (einer mit den 13 Textvariablen) aus dem Datenfeld mit der Angabe der Länge (len) funktioniert, die Länge len aber nicht bei „binary“ gilt.

btw, soll das i in Posi für Integer stehen? Bei langen Codes
macht es schon großen Sinn im Variablennamen den Typ
mitanzugegeben.

Das Posi soll eigentlich „Position“ heißen, also die Nummer des Datensatzes aus dem Feld. Das Wort war mir zu lang. Nicht sicher, ob „Pos“ ggf. ein Schlüsselwort ist (bei anderen Programmsprachen ist das eine Anweisung), habe ich das „i“ angehängt.

Bei sehr sehr großen Codes auch die Gültigkeit der variablen,
also
global, nur in dem Modul u.ä.
Wie auch immer, ich würde wenn schon das intPos benennen.
Siehe Google und ungarische Notation.

Das ist ein guter Tipp.

Meine Frage ist: gibt es eine elegantere Methode, einen String
mit seiner echten Länge aus einem Feld zu lesen. Meines
Wissens nach ist ein String immer so aufgebaut, daß die echte
Länge das 1. Zeichen darstellt (oder war das früher so, als
die Wortlänge noch begrenzt war?)

Wenn du selbst eine Textdatei mit zigmal einem deklarierten
Datensatz so brauchst du doch nicht die Länge der
Einzeldinger.
Das regelt sich doch wenn du analog wieder in eine Variable
einliest die als Datensatz deklariert wurde.

Das habe ich mir auch so gedacht. Aber vielleicht liegt das an dem Alter der Datei, die ich nach Excel übertragen habe. Sicherlich habe ich damals vergessen, den deklarierten Datenbereich zunächst zu leeren, bevor ich Daten dort eintrage. Heute passiert sowas sicherlich nicht mehr.

Annerster sieht der Fall aus wenn eine Textdatei vorliegt,
z.B.
aus TP mit deren „Regeln“.
Da muss man, ggfs. mit einem Hexeditor schauen wie die denn
strukturiert ist.
Ich erlebte da schon Fremddateien die hatten als Zeilentrenner
2mal Chr(13) und 1 mal Chr(10).

Da ging mein Auslesen schief da ich codiert hatte vbCRLF
zu beachten und beim Auslesen ggfs. „rauszuwerfen“.
Denn ein chr(13) blieb störend übrig.
Also ich rechne bei fremden Textdateien mit allem.

Zu deinem Anliegen. Bitte lade eine entsprechend gefüllte
Textdatei
hoch. Alternativ wie ich, zeige Code womit man sie so befüllt
wie du das willst.
Dazu noch deinen aktuellen Code mit dem du sie ausliest.

Vielleicht brauche ich das jetzt nicht mehr, da ich alle Daten korrekt in die Excel-Zellen übertragen habe, pro Datensatz (die 13 Strings) eine Zeile. Immerhin sind da 5294 Zeilen entstanden. Nur die Umlaute, das ß sowie die e und a mit dem Akzentzeichen mußte ich korrigieren, aber das ist ja bei Excel kein Problem.

Zu Random und Binary, wie gesagt, so ganz genau bis ins Detail
weiß ich wenig, warum auch, ich brauche das äußerst selten.
An dem Binary-Code (von rainer, weil ich nie weiß wie da die
genaue
Syntax ist *gg*) mag ich daß er Dateien auf einen Rutsch
einliest.

Dann habe ich sie im Arbeitsspeicher und bin dann dort sicher
schneller im Zugriff auf alle Datensätzen als du mit ner
Random-
Schleife.

Kann zeitlich ggfs. anders aussehen wenn man einzig den 567
ten
Datensatz aus der Datei braucht, k.A.

Gruß
Reinhard

Nicht daß wir uns mißverstehen, ohne Deine Hilfe hätte ich das mit dem Lesen nicht hinbekommen, weil ich den Knoten bei dem „get #FF“ hatte. Wenn erst mal eine Lösung existiert, bastele ich gern daran, welche weiteren Möglichkeiten es noch gibt. Bei der „Hilfe“ von Excel ist beschrieben, wie das „open“ funktioniert und das Close, was aber dazwischen zu stehen hat, fehlt. Die Beispiele in der Hilfe waren früher auch schon mal besser.

beste Grüße
Pauli

Hi,

ich misch mich mal ein. :smile:
Warum liest Du jeden Datensatz einzeln? Das ist nicht nötig und bremst nur.

Ich hab’ mal ein nicht lauffähiges Beispiel geschrieben, das alles weg lässt, was Du ohnehin selbst weißt. Was für Dich interessant ist, ist aber enthalten. Wie Du an ‚ff‘ kommst muss ich ja nicht einbauen. :smile:

Ich will Reinhard nicht korrigieren, das soll nur eine Ergänzung sein.

Option Explicit

Private Type Datensatz
 Int As Integer
 Strg As String \* 18
End Type

Dim arr() As Datensatz

Private Sub cmdLaden\_Click()
 ReDim arr(FileLen(Datei) \ 20)
 Open Datei For Binary As #ff
 Get #ff, , arr
 Close #ff
End Sub

Private Sub cmdSichern\_Click()
 Open Datei For Binary As #ff
 Put #ff, , arr
 Close #ff
End Sub

Fragen?

Gruß Rainer

Hallo Pauli,

Diese „Müll“-Bytes stehen also schon drin, sorry, ich stand auf dem
Schlauch :frowning:

Probiere es mal so:

k = Asc(Dsatz1.Haupt)
.Cells(Zeile, 2) = Mid(Dsatz1.Haupt, 2, k) 'Haupttitel

oder so:

.Cells(Zeile, 2) = Mid(Dsatz1.Haupt, 2, Asc(Dsatz1.Haupt)) 'Haupttitel

Eine Möglichkeit gibt es noch. Excel-Funktionen sind zigmal schneller
als vba. Natürlich erzeugt Vba die Formeln um max. schnell zu sein.
Und löscht sie nach Gebrauch auch wieder.

Dazu wäre dann schon eine Originaldatei oder zumindest eine Kopie
davon mit so 4-5 kompletten Datensätzen wünschenswert. Und
die genaue DefType- liste die du wohl schon erstellt hast.

Gruß
Reinhard

Hallo Rainer,
danke für Deinen ergänzenden Beitrag. Daß Du wieder die „binary“ verwendet hast, wird Reinhard freuen :smile:.
Im Lesen der Einzeldatensätze bzw. im Zurückspeichern sehe ich den Vorteil, bei einer Korrektur ggf. nur diesen Datensatz zurück zu speichern statt die ganze Datei. Das probiere ich aber erst mal aus.
Du hast mich auf den Gedanken gebracht, ggf. die alte Datei weiter zu benutzen, da sie von Excel problemlos gelesen und geschrieben werden kann. Ich hole die Daten dann lediglich nach Excel zwecks Anzeige.
Zur Info, es handelt sich um mein Archiv von Musiktiteln auf Schallplatten, MCs, CDs und Tonbändern. Die Platten habe ich drin, der Rest fehlt noch. Eigentlich etwas für eine Datenbank, aber damit kenne ich mich noch nicht aus.

Danke für Deine Anregungen
Pauli

Hallo Reinhard,

danke, daß Du mir weiterhin kreative Vorschläge machst, die ich gern annehme und ausprobiere (learning by doing). Wie ich schrieb, habe ich inzwischen alle Daten in Excel, diskutiere aber mit mir, ob ich ggf. bei der alten Datei bleibe, da das Lesen und Speichern (noch nicht probiert) prima funktioniert.
Ich kann Dir die Datendatei gern zur Verfügung stellen, nicht aber in diesem Thread als hochgeladener Link. Dazu sind die Daten ein Ausdruck meines persönlichen Musikgeschmackes und somit zu persönlich.
Wenn Du das ok findest, würde ich das per PN vorziehen.

Gruß
Pauli

Hallo Pauli,

diskutiere
aber mit mir, ob ich ggf. bei der alten Datei bleibe, da das
Lesen und Speichern (noch nicht probiert) prima funktioniert.

*schulterzuck*, deine Entscheidung. Prinzipiell für Vba egal.

Dazu sind die
Daten ein Ausdruck meines persönlichen Musikgeschmackes und
somit zu persönlich.

Du machst das spannend, was haste denn da, Heino, die Egerländer,
die Lieder von den schwarzen Typen die abends im Sarg pennen o.ä.? *gg*
Im Ernst, wenn ich als helfer es schon mache da zwei prozeduren zu
erstellen die erstmal so eine Txt-datei und dann auslesen sodaß
das jeder Interessierte sofort und identisch nachvollziehen kann,
so kannst du das als Anfrager mit viel mehr Interesse daran locker
auch tun.

Oder, was auch recht fix geht, im Datensatz sind ja viele
Untervariablen die neutral sind, die also so bleiben können.
Ergo nimmste einen Hexeditor und änderst nur die „verräterischen“
Einträge.

Also aus „Schwarzbraun ist die Haselnuss“ machste
„Lied11111111111111111111111111“ , aus Heino Gruppe1111 o.ä.
usw.
Auch manuell dauert das nicht lang. Geht ja nur um 5 Datensätze.

Wichtig dabei ist einzig daß die Dateistruktur erhalten bleibt,
also erstes Byte die echte Länge und dann da auch die Müllzeichen
hintendran.

Dann hast du evtl. einige interessierte Mitleser die sich daran
versuchen.
Ich habe jedenfalls keine Lust das nachzubauen, das ist das eine.
Das andere ist, mein Nachbau weicht von der Struktur von deinem
Original ab, was bedeutet mein Code kommt in Ablage P.

Oder ich mmuss ihn abändern, was doppelte Arbeit ist denn hätte
ich gleich das Original gehabt und Code entwickelt so
funktioniert der sonst veröffentliche ich ihn nicht.

Wenn Du das ok findest, würde ich das per PN vorziehen.

Warum bin ich vertrauenswürdiger als die anderen hier, du kennst mich
doch gar nicht?
Vllt. bin ich warum auch immer schräg drauf und zeige deinen
Musikgeschmack all meinen facebook-Freunden.

Gruß
Reinhard

Hallo Pauli,

danke für Deinen ergänzenden Beitrag. Daß Du wieder die
„binary“ verwendet hast, wird Reinhard freuen :smile:.

*seufz* ich bin nicht in der „Immer binary“-Partei.
Ich habe versucht darzustellen daß ich in den Feinheiten von
random und binary keine Ahnung habe.
Binary benutze ich deshalb weil ich Code gesucht habe der auf einen
Schwupps eine Datei einliest.
Für Rainer war es netterweise nur eine kleine Fingerübung mir den zu schreiben.

Zu Rainer. Ja, ich finde es schon eine arge Sauerei daß er sich jetzt
in unser Zwiegespräch ungefragt einmischt *schelt*
ABER, klar nicht wegen dem Einmischen sondern wegen dem „jetzt“ :smile:)
Ich hatte schon quasi sehnsuchtsvoll darauf gehofft daß er das
endlich macht *lächel*

Denn dadurch kann ich wie auch du nur lernen. Neben learning
by doing gibt es auch learning by other peoble.
Und wenn du das nicht einfach reinkopierst sondern wie du es
gut machst, damit herumexperimentieren, dann haste learning
by doing und ein anderes Wissen erwoorben als aus Kurs, buch,…

Gruß
Reinhard

Hallo Reinhard

das mit dem Musikgeschmack kam mir nur so, da ich dachte, Du wolltest die ganze Datei sehen. Nein, sowas, wie Du annimmst, habe ich nicht.
Ich habe mal die Datei „Musik.dat“ auf 7 Datensätze reduziert und einen Link erzeugt:
http://www.file-upload.net/download-4745726/Musik.da…

Warum „upload.net“ das html dahinter gesetzt hat, weiß ich nicht, habs aber erst mal so gelassen. Notfalls muß das gestrichen werden.

Die Datenstruktur ist wie folgt in der Deklaration, wobei eine Stelle davon die Längenangabe ist:
Type Datensatz
Haupt As String * 36
Titl As String * 36
Inf1 As String * 26
Inf2 As String * 26
Inf3 As String * 26
Art As String * 2
Stil As String * 2
Ort As String * 16
Ref As String * 16
Band As String * 21
Res1 As String * 3
Res2 As String * 3
Res3 As String * 3
End Type

Wie ich schon schrieb hat das mit dem Datentransfer zu Excel funktioniert, aber vielleicht erkennst Du eine noch elegantere Methode, die ich somit kennenlernen könnte. Die Benennung der Variablen bitte ich zu entschuldigen, die habe ich nicht geändert.

Meine Routine hatte ich schon genannt, oder?

Gruß
Pauli

ICH ZWEIFELE AN DEM DOWNLOAD
…ob der Link meines vorherigen Eintrags ok ist, bezweifele ich, da eine exe Datei zum Download angeboten wird. Da denke ich sofort an Viren und Würmern.
BITTE ALSO VORSICHT. Meine Datei heißt „Musik.dat“

Gruß
Pauli

Hallo Pauli,

Ich habe mal die Datei „Musik.dat“ auf 7 Datensätze reduziert
http://www.file-upload.net/download-4745726/Musik.da…
Warum „upload.net“ das html dahinter gesetzt hat, weiß ich nicht,

ist dort normal, machen manche Hochladseiten halt so.

Meine Routine hatte ich schon genannt, oder?

Nahezu nicht gebrauchsfertig. Gebrauchsfähig ist der Code der
nachfolgend folgt. Er ist hier eingebaut und euinem Button
zugewiesen:
http://www.uploadagent.de/show-186607-1346657561.html

Option Explicit

Type Datensatz
 Haupt As String \* 36
 Titl As String \* 36
 Inf1 As String \* 26
 Inf2 As String \* 26
 Inf3 As String \* 26
 Art As String \* 2
 Stil As String \* 2
 Ort As String \* 16
 Ref As String \* 16
 Band As String \* 21
 Res1 As String \* 3
 Res2 As String \* 3
 Res3 As String \* 3
End Type

Sub Musik()
Dim Dsatz1 As Datensatz, Posi As Long, FF As Long, Anz As Long
FF = FreeFile
Open "K:\musik.dat" For Random As #FF Len = Len(Dsatz1)
With Worksheets("Tabelle1")
 For Posi = 1 To Int(FileLen("K:\musik.dat") / 216)
 Get #FF, Posi, Dsatz1
 .Cells(Posi + 2, 1).Value = Trim(Mid(Dsatz1.Haupt, 2, Asc(Dsatz1.Haupt)))
 .Cells(Posi + 2, 2).Value = Trim(Mid(Dsatz1.Titl, 2, Asc(Dsatz1.Titl)))
 .Cells(Posi + 2, 3).Value = Trim(Mid(Dsatz1.Inf1, 2, Asc(Dsatz1.Inf1)))
 .Cells(Posi + 2, 4).Value = Trim(Mid(Dsatz1.Inf2, 2, Asc(Dsatz1.Inf2)))
 .Cells(Posi + 2, 5).Value = Trim(Mid(Dsatz1.Inf3, 2, Asc(Dsatz1.Inf3)))
 .Cells(Posi + 2, 6).Value = Trim(Mid(Dsatz1.Art, 2, Asc(Dsatz1.Art)))
 .Cells(Posi + 2, 7).Value = Trim(Mid(Dsatz1.Stil, 2, Asc(Dsatz1.Stil)))
 .Cells(Posi + 2, 8).Value = Trim(Mid(Dsatz1.Ort, 2, Asc(Dsatz1.Ort)))
 .Cells(Posi + 2, 9).Value = Trim(Mid(Dsatz1.Ref, 2, Asc(Dsatz1.Ref)))
 .Cells(Posi + 2, 10).Value = Trim(Mid(Dsatz1.Band, 2, Asc(Dsatz1.Band)))
 .Cells(Posi + 2, 11).Value = Trim(Mid(Dsatz1.Res1, 2, Asc(Dsatz1.Res1)))
 .Cells(Posi + 2, 12).Value = Trim(Mid(Dsatz1.Res2, 2, Asc(Dsatz1.Res2)))
 .Cells(Posi + 2, 13).Value = Trim(Mid(Dsatz1.Res3, 2, Asc(Dsatz1.Res3)))
 Next Posi
 Close #FF
 .Range("A:M").Columns.AutoFit
End With
End Sub
1 Like

Hallo Reinhard,

danke für Deine Mühe und umfangreiche Information. Ich habe viel dazugelernt.

Gruß
Pauli

danke für Deine Mühe und umfangreiche Information. Ich habe
viel dazugelernt.

Hallo Pauli,

gerne, ich gebe gerne mein wie auch immer Wissen weiter und es freut
mich wenn es auf fruchtbaren Boden fällt.
Prüfe mal das zweite Blatt, da siehste du Teile davon wie ich es mir
einfach gemacht habe da die zig Cells()= Codezeilen zu fertigen.

Manuell hätte ich das nie gemacht, da hätte ich abgwartet bis du das machst. Wenn nicht, okay, Sache erledigt :smile:

Gruß
Reinhard

Hallo Reinhard,

*seufz* ich bin nicht in der „Immer binary“-Partei.
Ich habe versucht darzustellen daß ich in den Feinheiten von
random und binary keine Ahnung habe.
Binary benutze ich deshalb weil ich Code gesucht habe der auf
einen Schwupps eine Datei einliest.

ja, ich auch. :smile: Binary liest auch jedes Byte ein, wie es ist, ohne Textformatierungen zu beachten.

Random ist eher dazu gedacht, eine Textdatei ähnlich einer Datenbank zu verwenden, einzelne Datensätze zu lesen und zu schreiben. Der Nachteil dabei: Der Index ist Integer. Bei rund 32000 Datensätzen ist Schluss. Das klappt mit Binary allerdings auch. Ob es einen Unterschied zwischen Random und Binary gibt, weiß ich nicht.

Zu Rainer. Ja, ich finde es schon eine arge Sauerei daß er
sich jetzt
in unser Zwiegespräch ungefragt einmischt *schelt*
ABER, klar nicht wegen dem Einmischen sondern wegen dem
„jetzt“ :smile:)
Ich hatte schon quasi sehnsuchtsvoll darauf gehofft daß er das
endlich macht *lächel*

*gg* Ich lese w-w-w nicht mehr so regelmäßig, es geht ja eh meist um Excel und da kenne ich mich nicht aus. Ich verlaufe mich dann auch immer auf andere Bretter und ärgere mich darüber, daß ich mich zu einem Beitrag habe hinreißen lassen.

Gruß Rainer

Ich hatte schon quasi sehnsuchtsvoll darauf gehofft daß er das
endlich macht *lächel*

*gg* Ich lese w-w-w nicht mehr so regelmäßig, es geht ja eh
meist um Excel und da kenne ich mich nicht aus. Ich verlaufe
mich dann auch immer auf andere Bretter und ärgere mich
darüber, daß ich mich zu einem Beitrag habe hinreißen lassen.

Hallo Rainer,

ja, time is marching on. Ich krieg schon seit langem mit
daß hier reine VB-Fragen immer weniger kommen. Sehr schade
um dein Wissen über/von VB :frowning:

Was solls, mein gar nicht so schlechtes mühsam angesammeltes Wissen
über Win 3.1, Oder wars Win98, damals war ich Stammgast im Windows-
Brett, konnte ich irgendwann auch in die Tonne schmeißen.

Und jetzt, alle neueren Versionen, weia, da bin ich wie ein DAU.
Hier in einem Brett wurde angefragt wie man wenn die CD weg ist
vom alten au den neuen PC Office/Excel „rüberschaufelt“.
Mal von bestimmten illegalen Dingen abgesehen wäre das für mich
kein Thema gewesen.

Einfach die reinen Dateien des Office/excel-Verzeichnisses
kopieren, dann dazu noch z.B. die excel.ini und die win.ini
des alten PCS.

Manches aus der alten win.ini in die neue win.ini einbauen.
Ggfs. Pfad anpassen und fertig.

Ich werd/bin alt, ich rede immer öfter von alten Zeiten *lächel*

Lieben Gruß
Reinhard

Hallo Reinhard,

ja, time is marching on. Ich krieg schon seit langem mit
daß hier reine VB-Fragen immer weniger kommen. Sehr schade
um dein Wissen über/von VB :frowning:

da hilft nur der Umstieg auf VB.NET. :smile: Aber da ständig auf dem Laufenden bleiben wird schwer gehen. Die Express-Edition ist für den Dauereinsatz nicht geeignet und alle drei Jahre eine neue Pro kaufen wird zu teuer. Wenn man Geld damit verdient OK, aber aus Spaß?

Was solls, mein gar nicht so schlechtes mühsam angesammeltes
Wissen
über Win 3.1, Oder wars Win98, damals war ich Stammgast im
Windows-
Brett, konnte ich irgendwann auch in die Tonne schmeißen.

Und jetzt, alle neueren Versionen, weia, da bin ich wie ein
DAU.
Hier in einem Brett wurde angefragt wie man wenn die CD weg
ist
vom alten au den neuen PC Office/Excel „rüberschaufelt“.
Mal von bestimmten illegalen Dingen abgesehen wäre das für
mich
kein Thema gewesen.

Einfach die reinen Dateien des Office/excel-Verzeichnisses
kopieren, dann dazu noch z.B. die excel.ini und die win.ini
des alten PCS.

Manches aus der alten win.ini in die neue win.ini einbauen.
Ggfs. Pfad anpassen und fertig.

Ich werd/bin alt, ich rede immer öfter von alten Zeiten
*lächel*

Ich werd’ nicht alt, ich bin’s ja schon. :smile:

Gruß Rainer
PS. Noch 10 Wochen … *gg*