| |

Allgemeine DiskussionenRe: Export von Access Tabelle | |  | Autor: darth roli | Datum: 13.04.04 10:10 |
| Hallo,
lies doch deine Daten in ein Flexgrid ein, somit hast du deine Daten schon mal Spaltenweise getrennt.
Hoffe mein Beispiel unten kann dir helfen.
bei meinem beispiel lese ich von einer Oracle Datenbank ein:
Dim Table As Variant
Dim datum_von As String
Dim datum_bis As String
Dim frage As String
Table = InputBox("Bitte geben Sie die gewünschte Tabelle an", "Tabelle aus Datenbank holen", "TBLKUNDENAUSGANG")
If Table = "" Then
Exit Sub
End If
datum_von = InputBox("Datum von:JJMMTT", "Start - Datum angeben")
If datum_von = "" Then
Exit Sub
End If
datum_bis = InputBox("Dauum bis:JJMMTT", "End - Datum angeben")
If datum_bis = "" Then
Exit Sub
End If
MousePointer = vbHourglass
Dim strPathToDB As String
'Flexgrid nicht sichtbar
'fgdaten.Visible = False
'Fehlerbehandlung
On Error GoTo abbruch
'Datenbank bestimmen
strPathToDB = "Password=tva;User ID=tva;Data Source=oracle;Persist Security Info=True"
'Connection zur Datenbank
Set CnA = New ADODB.Connection
With CnA
.CursorLocation = adUseClient
.Mode = adModeShareDenyNone
.Provider = "MSDAORA.1"
.ConnectionString = strPathToDB
.Open
End With
Err.Clear
Dim RsA As ADODB.Recordset
Dim sSQL As String
If CnA.State = adStateClosed Then
MsgBox "keine Connection zur Datenbank", _
vbCritical
Exit Sub
End If
'Fehlerbehandlung
On Error GoTo abbruch
Set RsA = New ADODB.Recordset
'Recordset laden
sSQL = "Select * From " & Table & " where Datum between " & datum_von & " and " & datum_bis
With RsA
.CursorType = adOpenKeyset
.LockType = adLockReadOnly
.ActiveConnection = CnA
.Open sSQL
End With
'anzeigen in Flexgrid
FlexFillFromRs RsA, fgdaten
fgdaten.Visible = True
'Recordset schliessen, Speicher freigeben
RsA.Close
Set RsA = Nothing
Err.Clear
MousePointer = vbNormal
Exit Sub
abbruch:
MousePointer = vbNormal
MsgBox "Fehler: " & Err.Number & vbCrLf & _
Err.Description, vbCritical
Err.Clear
Und jetzt werden die Daten ins MsFlexgrid übernommen:
Public Function FlexFillFromRs(Rs As ADODB.Recordset, Flex As MSFlexGrid)
'Inhalt Recordset in einem Flexgrid darstellen
Dim i As Long
Dim j As Long
Dim breit As Single
With Flex
'neuzeichnen unterdrücken
' .Redraw = False
.AllowBigSelection = True
.AllowUserResizing = flexResizeBoth
.Appearance = flex3D
.FocusRect = flexFocusNone
' .FixedRows = 1
' .FixedCols = 1
'Anzahl Spalten festlegen
.Cols = Rs.Fields.Count + 1
'Header beschriften
For i = 0 To Rs.Fields.Count - 1
.TextMatrix(0, i + 1) = Rs.Fields(i).Name
Next
'Anzahl der Zeilen festlegen
.Rows = .FixedRows + Rs.RecordCount + 1
'Flex mit Daten füllen
Do While Not Rs.EOF
'RecordNummer = Nummer Zeile/Row
i = Rs.AbsolutePosition
For j = 0 To Rs.Fields.Count - 1
'Abfrage auf NULL
If Not IsNull(Rs.Fields(j).Value) Then
.TextMatrix(i, j + 1) = Rs.Fields(j).Value
End If
Next
zeilen = zeilen + 1
Rs.MoveNext
Loop
'Spaltenbreite optimieren
For i = 0 To .Cols - 1
breit = 0
For j = 0 To .Rows - 1
If Me.TextWidth(.TextMatrix(j, i)) > breit Then
breit = Me.TextWidth(.TextMatrix(j, i))
End If
Next
.ColWidth(i) = breit + 120
Next
'Flex (endgültig) Neu zeichnen
.Redraw = True
End With
txtzeilen.Text = zeilen
zeilen = 0
Statusbar.Value = 0
End Function |  |
 | 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 |
  |
|
sevAniGif (VB/VBA) 
Anzeigen von animierten GIF-Dateien
Ab sofort lassen sich auch unter VB6 und VBA (Access ab Version 2000) animierte GIF-Grafiken anzeigen und abspielen, die entweder lokal auf dem System oder auf einem Webserver gespeichert sind. Weitere InfosTipp des Monats Oktober 2025 Matthias KozlowskiUmlaute konvertierenErsetzt die Umlaute in einer Zeichenkette durch die entsprechenden Doppelbuchstaben (aus ä wird ae, usw.) Access-Tools Vol.1 
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere 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
|
|