Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Abfragewert in Excel-Export

Begonnen von Accesser11, Mai 11, 2011, 22:24:48

⏪ vorheriges - nächstes ⏩

Accesser11

Hallo zusammen

Ich habe folgenden VBA-Code von dbwiki.net (Beispieldatenbanken->AccessToExcel)


Dim oExcel As Excel.Application, DB As DAO.Database, RS As DAO.Recordset, I As Long
  On Error Resume Next
  Err.Clear
  Set oExcel = GetObject(, "Excel.Application ")
  If Err.Number <> 0 Then Set oExcel = CreateObject("Excel.Application")
  On Error GoTo 0
  With oExcel
    .Visible = True
    .Workbooks.Add
'    Set RS = Me.RecordsetClone
    Set DB = CurrentDb
    Set RS = DB.OpenRecordset("qryTest", dbOpenSnapshot)
      For I = 0 To RS.Fields.Count - 1
        .Cells(1, I + 1) = RS.Fields(I).Name
      Next I
      .Range("A2").Select
    .Selection.CopyFromRecordset RS
    If MsgBox("Speichern?", vbYesNo + vbQuestion) = vbYes Then
      .ActiveWorkbook.SaveAs Me!FName
    Else
      .ActiveWorkbook.Close SaveChanges:=False
    End If
    .Quit
  End With


Ich möchte nun, dass in den Zellen, bei welchen eine 1:n Beziehung vorliegt. Wenn ich die Abfrage in Access ausführe wird der Wert angezeigt, in Excel jedoch nur die Zahl. Wie kann ich erreichen, so dass der Wert auch in Excel angezeigt wird?

Vielen Dank und Grüsse
Accesser11

MzKlMu

#1
Hallo,
nimm in die Abfrage qryTest auch die 1-Tabelle mit auf. Lösche die Spalte mit der Zahl (oder lasse diese) und nimm (statt derer) die Spalte mit dem Text aus der 1-Tabelle.

Das Verhalten kommt von den Nachschlagefeldern die Du direkt in den Tabellen angelegt hast. Ich würde Dir dringend raten, diese zu entfernen und durch normale Textfelder zu ersetzen.
Nachschlagefelder in Tabellen verhindern den sauberen Aufbau einer DB.
Siehe hierzu:

Die Nachteile von Nachschlagefeldern

In Formularen sind die Nachschlagefelder (Kombinationsfelder) kein Problem.
Gruß Klaus

Accesser11

Hallo,

Vielen Dank für die Lösung! ;)

Ich habe noch eine andere Frage und zwar...
wie kann ich bewerkstelligen, dass die ausgeblendenten Spalten in der Datenblattansicht im Excel nicht angezeigt werden?

Dankbare Grüsse
Accesser11

database

Hallo,

Zitatwie kann ich bewerkstelligen, dass die ausgeblendenten Spalten in der Datenblattansicht im Excel nicht angezeigt werden
??? ??? ???

Welche ausgeblendeten Spalten? Was meinst du da genau damit?

Accesser11

Hallo,

ZitatWelche ausgeblendeten Spalten? Was meinst du da genau damit?
Damit meine ich, dass die Spalten welche in der Datenblattansicht einer Access-Abfrage ausgeblendet sind, beim Excel-Export über VBA auch ausgeblendet sind.

Gruss
Accesser11

database

Hallo,

wenn du die Datenübergabe nach dem obigen Schema durchführst und in der zu Grunde liegenden Abfrage
eine eingeschränkte Anzahl von Spalten hast, werden NUR diese Spalten ins Excel übergeben werden.

HTH