|
| |

Visual-Basic Einsteiger| Speichern mehrerer Flexgrids in 1 Datei | |  | | Autor: maic | | Datum: 15.04.02 12:47 |
| Hallo zusammen !
Ich habe ein Formular mit 6 MSFlexGrids.
Und möchte den gesamten Inhalt der Grids in eine einzige Datei speichern.
Und natürlich auch wieder öffnen können.
Geht das überhaupt ?
im moment benutze ich folgenden QC der geht aber nur zum speichern und öffnen eines einzelnen flexgrids in eine datei.
QC:
####################
' Inhalt eines FlexGrid-Controls speichern
' sFilename: Dateiname inkl. vollständigen Pfad
' SaveFixesRowCols: True, wenn Texte der FixedRows
' und FixedCols-Zellen gespeichert werden soll
' ===================================================
Public Sub FlexGrid_SaveToFile(Grid As MSFlexGrid, _
ByVal sFilename As String, _
Optional ByVal SaveFixedRowCols As Boolean = True)
Dim F As Integer
Dim lRow As Long
Dim lCol As Long
Dim lRowStart As Long
Dim lColStart As Long
' Datei für das Speichern der Daten öffnen
F = FreeFile
Open sFilename For Output As #F
With Grid
' Startzeile / Spalte
lRowStart = IIf(SaveFixedRowCols, 0, .FixedRows)
lColStart = IIf(SaveFixedRowCols, 0, .FixedCols)
For lRow = lRowStart To .Rows - 1
' Spalten speichern - Trennzeichen "vbTab"
For lCol = lColStart To .Cols - 1
Print #F, .TextMatrix(lRow, lCol);
If lCol < .Cols-1 Then Print #F, vbTab;
Next lCol
Print #F, ""
Next lRow
End With
' Datei schliessen
Close #F
End Sub
Aufruf:
Dim sDataFile As String
sDataFile = App.Path & "Grid.dat"
FlexGrid_SaveToFile MSFlexGrid1, sDataFile, True
Und das Gegenstück zum Speichern...
Wie man den Inhalt wieder einlesen kann, zeigt Ihnen folgende Proezdur:
' Inhalt eines FlexGrid-Controls einlesen
' sFilename: Dateiname inkl. vollständigen Pfad
' SaveFixesRowCols: True, wenn Texte der FixedRows
' und FixedCols-Zellen eingelesen werden soll
' ===================================================
Private Sub FlexGrid_LoadFromFile(Grid As MSFlexGrid, _
ByVal sFilename As String, _
Optional ByVal SaveFixedRowCols As Boolean = True)
Dim F As Integer
Dim lRow As Long
Dim lCol As Long
Dim lRowStart As Long
Dim lColStart As Long
Dim sLine As String
Dim sCols() As String
' Existiert die Datei überhaupt?
If Dir(sFilename, vbNormal) <> "" Then
' Datei für das Lesen der Daten öffnen
F = FreeFile
Open sFilename For Input As #F
With Grid
' Startzeile / Spalte
lRowStart = IIf(SaveFixedRowCols, 0, .FixedRows)
lColStart = IIf(SaveFixedRowCols, 0, .FixedCols)
' Textdatei zeilenweise einlesen
lRow = lRowStart
While Not EOF(F)
Line Input #F, sLine
If sLine <> "" Then
' Zeile in einzelne Spalten zerlegen
sCols = Split(sLine, vbTab)
If UBound(sCols) < .Cols Then _
ReDim Preserve sCols(.Cols)
' Spalteninhalt ins Grid übertragen
For lCol = lColStart To .Cols - 1
.TextMatrix(lRow, lCol) = sCols(lCol)
Next lCol
lRow = lRow + 1
End If
Wend
End With
' Datei schliessen
Close #F
End If
End Sub
################
Würde mich über Hilfe freuen !
cu Maic |  |
 Speichern mehrerer Flexgrids in 1 Datei | 39 | maic | 15.04.02 12:47 |
 | Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
  |
|
sevISDN 1.0 
Überwachung aller eingehender Anrufe!
Die DLL erkennt alle über die CAPI-Schnittstelle eingehenden Anrufe und teilt Ihnen sogar mit, aus welchem Ortsbereich der Anruf stammt. Weitere Highlights: Online-Rufident, Erkennung der Anrufbehandlung u.v.m. Weitere InfosTipp des Monats Oktober 2025 Matthias KozlowskiUmlaute konvertierenErsetzt die Umlaute in einer Zeichenkette durch die entsprechenden Doppelbuchstaben (aus ä wird ae, usw.) sevZIP40 Pro DLL 
Zippen und Unzippen wie die Profis!
Mit nur wenigen Zeilen Code statten Sie Ihre Anwendungen ab sofort mit schnellen Zip- und Unzip-Funktionen aus. Hierbei lassen sich entweder einzelnen Dateien oder auch gesamte Ordner zippen bzw. entpacken. Weitere Infos
|
| |
|
Copyright ©2000-2025 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|