Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1568to1572
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
Inhaltsverzeichnis

userform grafik

userform grafik
22.07.2017 19:06:35
stef26
Hallo liebe Excelprofis,
ich hätte da mal eine Frage.
In Excel gibt es die Möglichkeit einer Grafik einen bestimmten Zellbereich zuzuordnen.
Es sieht dann aus wie ein Hardcopy des angegeben Bereiches.
Gibt es dies auch in einer UserForm ?
Irgendwie bringe ich es da nicht hin?
Geht das nicht oder stelle ich mich blöde an?
Gruß
Stefan

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: userform grafik
22.07.2017 19:12:42
stef26
ach bisher hab ich nur komplizierte wege gefunden mit kopieren und als jpg speichern usw.
ich suche nach einer einfachen Anwendung wie das mit der Grafik in Excel möglich ist.
hier kann man auf einfachste Art einen Zellbereich darstellen lassen...
AW: userform grafik
23.07.2017 03:25:38
stef26
Hallo zu später Stunde,
ich habe im Internet was gefunden was für mein Problem passen würde.
Leider bleibt das Macro an der Fett markierten Stelle stehen...
Private Sub CommandButton1_Click()
Sheets("Film").Range("A15:A30").Copy
Range("R2").Select
ActiveSheet.Pictures.Paste link:=True
Sheets("Film").Pictures.Select
Application.CutCopyMode = False
Dim myChart As String, myPicture As String
Dim picWidth As Long, picHeight As Long
Application.ScreenUpdating = False
myPicture = Selection.Name
With Selection
picHeight = .ShapeRange.Height
picWidth = .ShapeRange.Width
End With
Charts.Add
ActiveChart.Location Where:=xlLocationAsObject, Name:="Film"
Selection.Border.LineStyle = 0
myChart = Selection.Name & " " & Split(ActiveChart.Name, " ")(2)
With ActiveSheet
With .Shapes(myChart)
.Width = picWidth
.Height = picHeight
End With
.Shapes(myPicture).Copy
With ActiveChart
.ChartArea.Select
.Paste
End With
.ChartObjects(1).Chart.Export Filename:="C:\Test\MyPic.jpg", FilterName:="jpg"
.Shapes(myChart).Cut
End With
Application.ScreenUpdating = True
Set Picture = LoadPicture("C:\Test\MyPic.jpg")
ActiveSheet.Pictures.Delete
End Sub

https://www.herber.de/bbs/user/115010.xlsm
vielleicht weis das Jemand von euch, was ich da falsch mache?
Liebe Grüsse
Stefan
Anzeige
AW: userform grafik
23.07.2017 03:34:22
stef26
noch was gefunden, auch das geht irgendwie nicht..
Private Sub CommandButton1_Click()
Dim chDiagramm As ChartObject
Dim picBild As Picture
Application.ScreenUpdating = False
Range("A1:D15").CopyPicture Appearance:=xlScreen, Format:=xlPicture
Set picBild = ActiveSheet.Pictures.Paste
picBild.CopyPicture Appearance:=xlScreen, Format:=xlPicture
Set chDiagramm = ActiveSheet.ChartObjects.Add(0, 0, picBild.Width, picBild.Height)
With chDiagramm.Chart
.Paste
.Export Filename:="C:\Test\Bild.jpg", FilterName:="JPG" ' andere Grafikformate sind möglich
End With
If Not Me.Picture.Picture Is Nothing Then
Image1.Picture = Nothing
End If
Image1.Picture = LoadPicture("C:\Test\Bild.jpg")
DoEvents
chDiagramm.Delete
Kill "C:\Test\Bild.jpg"
picBild.Delete
Set chDiagramm = Nothing
Set picBild = Nothing
Application.ScreenUpdating = True
End Sub

Anzeige
zusätzliche Informationen erforderlich
23.07.2017 10:13:38
Beverly
Hi,
die Aussage "geht irgendwie nicht" ist keine Aussage, mit der jemand etwas anfangen kann - du solltest schon GENAU beschreiben WAS nicht geht: gibt es einen Laufzeitfehler (wenn ja - was sagt der Debugger genau, in welcher Zeile kommt der Fehler), wird das Bild nicht exportiert, wird das Bild nicht ins Image-Control geladen, oder...


AW: userform grafik
23.07.2017 11:19:40
stef26
Hallo Sepp,
vielen herzlichen Dank. Ich hab mich da verrannt. Wenn ich deinen Code ansehe, hab ich viel zu kompliziert das ganze versucht umzusetzen.
Super Super DANKE !!!!!
Grüsse
Stefan
AW: userform grafik
23.07.2017 17:13:17
Luschi
Hallo Sepp & Stefan,
hier meine Anmerkung dazu:

Private Sub UserForm_Activate()
Dim strTmp As String
With Sheets("Tabelle1")
'.Range("C4:F11").Copy
'der nachfolgende Befehl macht in E_2013/16 Probleme und bring Fehler 1004
.Pictures.Paste
'deshalb diese Variante aus Vba-Excel 2003, siehe:
'https://msdn.microsoft.com/en-us/library/office/aa223846(v=office.11).aspx
'und funktioniert auch in Excel 2013/2016
.Range("C4:F11").CopyPicture xlScreen, xlBitmap
.Paste .Range("H12")
strTmp = .Shapes(.Shapes.Count).Name
Set Image1.Picture = ShowShape(Tabelle1, strTmp)
.Shapes(.Shapes.Count).Delete
End With
Me.Repaint
End Sub

Gruß von Luschi
aus klein-Paris
Anzeige
AW: userform grafik
23.07.2017 17:40:41
stef26
Hallo Luschi,
gut zu wissen, wenn sich die Version in meiner Arbeit ändert, kann ich das gut gebrauchen
Danke
Gruß
Stefan
AW: userform grafik
23.07.2017 18:21:24
Mullit
Hallo,
na was macht ihr denn da, ein extra Bild einfügen ist unnötig, wir haben doch Api am Start, da kopieren wir den Zellbereich direkt aus dem Clipboard...
Ach ja und Stef, ich würd jetzt nicht sagen, daß das Api-Geschoss von Nepumuk nicht kompliziert ist..;-)
Gruß, Mullit

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige