Forums Neueste Beiträge
 

Excel Bereich transponieren

03/10/2009 - 07:53 von Hubert Holler | Report spam
Ich möchte von Access aus einen Bereich in einer Excel Datei transponieren.

Dazu habe ich folgenden Code mal ausprobiert:
Dim objExcelApp As Object
Dim objExcelWB As Object
Dim objExcelWS As Object
Dim cell As Object
Dim ex As Excel.Application

Set objExcelApp = CreateObject("Excel.Application")
Set objExcelWB = objExcelApp.Workbooks.Open(datei)
Set objExcelWS = objExcelWB.Sheets("db_I_Export")

objExcelWS.Activate

With objExcelApp
.Range("a1:AK2").Select
.Selection.Copy
.Range("a4").Select
.Selection.PasteSpecial skipblanks:=False, Transpose:=True
.Range("a1:aK2").Select
.Application.CutCopyMode = False
.Selection.ClearContents
.Range("a4:b40").Select
.Selection.Cut Destination:=Range("a1:ak2")
.Range("a1").Select
.SaveWorkspace
.Quit
End With

Leider funktioniert aber der Code ab der Zeile
.Selection.Cut nicht mehr.

Wenn ich den Code direkt in Excel ausführe funktioniert das ganze ohne
Probleme.

Zur Info:
Ich verwende da Access 2007 und Excel 2003

Hoffe da kann mir jemand weiterhelfen.
Vielen Dank für jede Antwort
 

Lesen sie die antworten

#1 Hubert Holler
03/10/2009 - 08:48 | Warnen spam
Ich habe nun folgendes verwendet:

Dim objExcelWB As Object
Dim objExcelWS As Object

Set objExcelApp = CreateObject("Excel.Application")
Set objExcelWB = objExcelApp.Workbooks.Open(datei)
Set objExcelWS = objExcelWB.Sheets("db_I_Export")

objExcelWS.Activate

With objExcelApp
.Range("a1:AK2").Select
.Selection.Copy
.Range("a4").Select
.Selection.PasteSpecial skipblanks:=False, Transpose:=True
.Range("a1:aK2").Select
.Application.CutCopyMode = False
.Selection.ClearContents
.Range("A4:B40").Select
.Selection.Cut
.Range("A1").Select
.ActiveSheet.Paste
.Columns("A:B").Select
.Columns("A:B").EntireColumn.AutoFit
.Range("a1").Select
.ActiveWorkbook.Save
.Quit
End With

Hat nun funktioniert.
Danke

Ähnliche fragen