另一个相同的图形问题 - VBA 不喜欢我在命名范围之前创建系列的方式。我还有 4 个变量:IF UPDATE (User_fullname)
BEGIN
DECLARE @newfullname nvarchar(MAX);
DECLARE @oldfullname nvarchar(MAX);
--
SELECT @oldfullname = i.User_fullname FROM deleted i;
SELECT @newfullname = i.User_fullname FROM inserted i;
--
INSERT INTO UsersLogs (UL_user_key_r, UL_date, UL_oldname, UL_newname, UL_IsDeleted)
VALUES (@user_key, GETDATE(), @oldfullname, @newfullname, 0)
END
。我已经编写了以下代码(从 L2 开始):
ChtL1Obj As ChartObject, ChtL1 As Chart, ChtL2Obj As ChartObject, ChtL2 As Chart
问题是,代码不会编译。在 Range("Q31").Select
Set ChtL2Obj = ActiveSheet.ChartObjects.Add(Left:=1075, Width:=450, Top:=465, Height:=225)
Set ChtL2 = ChtL2Obj.Chart
With ChtL2.Chart
.ChartType = xlXYScatter
.SeriesCollection.NewSeries
.SeriesCollection(1).Name = "QC Level 2"
.SeriesCollection(1).XValues = RngL2X
.SeriesCollection(1).Values = RngL2Y
End With
处,我收到“编译错误:未找到方法或数据成员”。
错误在哪里?
答案 0 :(得分:0)
错误正是 GSerg 所建议的。
当您设置 ChtL2 时,您将引用 ChtL2 等于 ChtL2Obj.Chart
Set ChtL2 = ChtL2Obj.Chart
所以你需要把With ChtL2.Chart改为With ChtL2
With ChtL2
.ChartType = xlXYScatter
End With
表示与ChtL2.ChartType = xlXYScatter 或ChtL2Obj.Chart.ChartType = xlXYScatter 相同