我很难将图片粘贴到我的图表上。我尝试过各种“With TempChrt”组合,让.paste无法正常工作。 如果我可能会绕着肘部解决问题,我愿意接受建议。
基本上我想将具有以下特定大小,背景颜色和值的单元格传输到用户表单,仅供查看之用。也很抱歉,但我无法使用粗体或斜体字体来处理带有问题的代码,但挂起的行是“.Paste”后面的“With TempChrt”。对象'_chart'的方法'粘贴'失败。
Private Sub UserForm_Initialize()
Dim i As Byte
Dim rng1 As Range, rng2 As Range
Dim wkshtDC As Worksheet
Dim TempChrt As Chart
Dim TempChrtNm As String
Set wkshtDC = Worksheets("Data & Calcs")
wkshtDC.Unprotect "123"
Set TempChrt = wkshtDC.Shapes.AddChart.Chart
TempChrtNm = TempChrt.Parent.Name
With TempChrt.Parent
.Width = 87.12
.Height = 285.12
.Top = wkshtDC.Range("BC28").Top
.Left = wkshtDC.Range("BC28").Left
End With
For i = 1 To 4
Set rng1 = wkshtDC.Range("BE28").Offset(0, i)
Set rng2 = wkshtDC.Range("BE46").Offset(0, i)
If i <> 1 Then
TempChrt.Shapes.Range(Array("chart")).Delete
End If
wkshtDC.Range(rng1.Address, rng2.Address).CopyPicture xlScreen, xlPicture
With TempChrt
.Paste
.Export Filename:="G:\MVOsafe\Ramp-up\misc\TempMatrix" & i & ".bmp"
End With
Me.Controls("Frame" & i).Picture = LoadPicture("G:\MVOsafe\Ramp-up\misc\TempMatrix" & i & ".bmp")
Next i
TempChrt.Parent.Delete
wkshtDC.Protect "123"
End Sub
答案 0 :(得分:0)
得到了......
With TempChrt
更改为
wkshtDC.Range(rng1.Address, rng2.Address).CopyPicture xlScreen, xlPicture
wkshtDC.ChartObjects(TempChrtNm).Activate
With ActiveChart
.Paste
.Export Filename:="G:\MVOsafe\Ramp-up\misc\TempMatrix" & i & ".bmp"
End With
,其中
TempChrtNm = TempChrt.Parent.Name