Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
908to912
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
908to912
908to912
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

VBA - kopieren eines Diagramms

VBA - kopieren eines Diagramms
25.09.2007 10:47:25
Ron
Hallo,
habe vor längerer Zeit schon mal einen Beitrag geschrieben in dem ich gerne eine xls-sheet ohne Makros und Formatierungen in eine separate Datei kopieren wollte.
Hat auch super funktioniert (siehe Code nachfolgend)
Kann man den noch erweitern, das man ein xls-Diagramm mitkopiert? Auf der Seite befindet sich ein kleines Balkendiagramm, welches ich noch in der anderen Datei benötigen würde.
Vielleicht kann man den Code noch diesbezüglich erweitern?!
DANKE in Voraus
LG
Ron

Private Sub Kopie_Click()
'   Kopie einer Tabelle ohne Formeln mit Format, Register nicht geschützt
Workbooks.Add
Application.ScreenUpdating = False              ' Bildschirmaktualisierung aus
With ThisWorkbook                                                   ' Datei mit Code
ActiveWorkbook.SaveAs .Path & "\Antrag_" & ThisWorkbook.Name ' neue Datei Workbooks. _
Add
Worksheets.Add
.Worksheets("Antrag").Cells.copy
With ActiveWorkbook.Cells
.PasteSpecial Paste:=xlPasteValues  ' Werte
.PasteSpecial Paste:=xlFormats      ' Formate
End With
ActiveWorkbook.ActiveSheet.Name = "Antrag"
Application.CutCopyMode = False                         ' Zwischenspeicher löschen
MsgBox "Reinen Antrag gespeichert als: " & .Path & "\Antrag" & ThisWorkbook. _
Name
'ActiveWorkbook.Close True                               ' Dateikopie schließen mit _
speichern
End With
Application.ScreenUpdating = True                           ' Bildschirmaktualisierung ein
End Sub


2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA - kopieren eines Diagramms
25.09.2007 15:01:48
fcs
Hallo Ron,
ich hab dir das Kopieren des Diagramms in den Code eingebaut. Zwecks besserer Lesbarkeit und einfacherem Datenzugriff hab ich Variablen für alle Objekte angelegt.
Gruß
Franz

Private Sub Kopie_Click()
'   Kopie einer Tabelle ohne Formeln mit Format, Register nicht geschützt
Dim wbThis As Workbook, wksThis As Worksheet
Dim wbNeu As Workbook, wksNeu As Worksheet
Dim Diagramm As ChartObject, DiagNeu As ChartObject, iI%
Set wbThis = ThisWorkbook
Set wksThis = wbThis.Worksheets("Antrag")
Workbooks.Add
Set wbNeu = ActiveWorkbook
Application.ScreenUpdating = False         ' Bildschirmaktualisierung aus
With wbThis                                             ' Datei mit Code
wbNeu.SaveAs .Path & "\Antrag_" & ThisWorkbook.Name
wbNeu.Worksheets.Add Before:=wbNeu.Sheets(1)
Set wksNeu = ActiveSheet
wksThis.Cells.Copy
With wksNeu.Cells
.PasteSpecial Paste:=xlPasteValues  ' Werte
.PasteSpecial Paste:=xlFormats      ' Formate
End With
wksNeu.Name = wksThis.Name
'Eingebettetes Diagramm kopieren
Set Diagramm = .Worksheets("Antrag").ChartObjects(1)
Diagramm.Copy
wksNeu.Paste
Application.CutCopyMode = False            ' Zwischenspeicher löschen
Set DiagNeu = wksNeu.ChartObjects(1)
DiagNeu.Top = Diagramm.Top
DiagNeu.Left = Diagramm.Left
'Diagrammblatt kopieren
'        .Charts("Diagramm1").Copy After:=wbNeu.Sheets(1)
'Link zur Ursprungsdatei entfernen
wbNeu.ChangeLink Name:=wbThis.Name, NewName:=wbNeu.Name, Type:=xlExcelLinks
'Überzählige Tabellenblätter löschen
Application.DisplayAlerts = False
For iI = 2 To wbNeu.Worksheets.Count
wbNeu.Worksheets(iI).Delete
Next
Application.DisplayAlerts = True
Range("a1").Select
wbNeu.Save
Application.ScreenUpdating = True   ' Bildschirmaktualisierung ein
MsgBox "Reinen Antrag gespeichert als: " & wbNeu.FullName
'ActiveWorkbook.Close True   ' Dateikopie schließen mit speichern
End With
Set wbThis = Nothing: Set wbNeu = Nothing: Set wksNeu = Nothing
Set Diagramm = Nothing: Set DiagNeu = Nothing
End Sub


Anzeige
AW: VBA - kopieren eines Diagramms
27.09.2007 10:34:00
Ron
Hallo Franz,
vielen Dank für die Hilfe!
Funktioniert bestens
Ron

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige