0

同じフォルダにある別のブックにあるグラフや画像、およびグラフにアクセスしようとしていました。これが私のコードです。

wbname = Worksheets("Sheet1").Range("A1:A1").Value
wsname = Worksheets("Sheet1").Range("A2:A2").Value
MsgBox wbname
wbname = ThisWorkbook.Path & "\" & wbname    
MsgBox "reached here"
MsgBox "HI"
MsgBox Workbooks("C:\charts\1.xls").Sheet("L1-XO PGT ScoreCard").Range("A1:A1").Value
Set aWorkSheet = Workbooks("C:\charts\1.xls").Sheet("L1-XO PGT ScoreCard")
sCurrentSheet = aWorkSheet.Name
MsgBox "Shapes count " + CStr(aWorkSheet.Shapes.Count)
For iIndex = 1 To aWorkSheet.Shapes.Count
Set aShape = aWorkSheet.Shapes(iIndex)
MyPicture = aShape.Name
MsgBox aShape.Name + " Name, " + Str(aShape.Type)
If Left(aShape.Name, 7) = "Picture" Then
With aShape
PicHeight = .Height
PicWidth = .Width
End With
Set aChart = ActiveWorkbook.Charts.Add
ActiveWorkbook.ActiveChart.Location Where:=xlLocationAsObject, Name:=sCurrentSheet
iShapeCount = aWorkSheet.Shapes.Count
Set aShapeChart = aWorkSheet.Shapes(iShapeCount)
MyChart = aShapeChart.Name      '"Chart " & Str(aWorkSheet.Shapes.Count)
aShapeChart.Width = PicWidth
aShapeChart.Height = PicHeight
sChartJpg = sChartJpg & aShapeChart.Name & ".jpg"
With aWorkSheet
aShape.Copy
With ActiveChart 'aChart
.ChartArea.Select
.Paste
End With
.ChartObjects(iIndex).Chart.Export Filename:=sChartJpg, FilterName:="jpg",                    Interactive:=True
aShapeChart.Cut
End With
Application.ScreenUpdating = True
MsgBox "Completed."
Exit Sub
End If
Next
MsgBox "Completed."Exit Sub
ErrHandler:
MsgBox "Error # " & CStr(Err.Number) & " " & Err.Description & " " & Err.Source
Err.Clear   ' Clear the error.
 End Sub

「HI」アラートボックスが表示された後、完了したテストボックスが直接表示され、TestBOXアラート「MsgBoxWorkbooks( "C:\ charts \ 1.xls")。Sheet( "L1-XO PGT ScoreCard")。Rangeは表示されません。 ("A1:A1")。Value "...また、ブックから画像を抽出していません。いくつかのplsは助けることができます

4

1 に答える 1

2

ブックを開く必要があります。ほとんどのコードは、閉じたブックでは機能しません。

于 2012-12-08T08:38:09.890 に答える