Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2749|回复: 4

[已解决]【求助】图表标题的引用

[复制链接]
发表于 2013-5-4 08:34 | 显示全部楼层 |阅读模式
本帖最后由 jzzhmm425 于 2013-5-4 08:40 编辑

这是个插入图表的代码,图表的标题我想引用每张工作表的第一个单元格的内容。
但是问题来了,代码第四句,我不知道Dim C As ???,不知道该AS什么好了,那么多属性找不到该建立什么属性的。
这段代码的第四句:Dim C As ChartTitle,第十二句:Set C = .Cells(1, 1).Text,第二十二句:.ChartTitle.Text = C。
  1. Sub ChartAdd()
  2. Dim A As Range
  3. Dim B As Range
  4. Dim C As ChartTitle
  5. Dim Sh As Worksheet
  6. Dim myChart As ChartObject
  7. For x = 3 To Sheets.Count
  8. With Sheets(x)
  9. .ChartObjects.Delete
  10. Set A = .Range(.Range("A3"), .Range("A3").End(xlDown))
  11. Set B = .Range(.Range("H3"), .Range("H3").End(xlDown))
  12. Set C = .Cells(1, 1).Text
  13. Set myChart = .ChartObjects.Add(120, 40, 400, 250)
  14. With myChart.Chart
  15. .ChartType = xlLineMarkers
  16. .SetSourceData Source:=Sheets(x).Range("C42"), PlotBy:=xlColumns
  17. .SeriesCollection.NewSeries
  18. .SeriesCollection(1).XValues = A
  19. .SeriesCollection(1).Values = B
  20. .ApplyDataLabels ShowValue:=True
  21. .HasTitle = True
  22. .ChartTitle.Text = C
  23. With .ChartTitle.Font
  24. .Size = 20
  25. .ColorIndex = 3
  26. .Name = "华文新魏"
  27. End With
  28. With .ChartArea.Interior
  29. .ColorIndex = 8
  30. .PatternColorIndex = 1
  31. .Pattern = xlSolid
  32. End With
  33. With .PlotArea.Interior
  34. .ColorIndex = 35
  35. .PatternColorIndex = 1
  36. .Pattern = xlSolid
  37. End With

  38. End With
  39. End With
  40. Set myRange = Nothing
  41. Set myChart = Nothing
  42. Next
  43. End Sub

复制代码
最佳答案
2013-5-4 15:41
矿井瓦斯抽采钻场组抽采情况综合分析表(更新至2013.3).rar (99.98 KB, 下载次数: 6)

矿井瓦斯抽采钻场组抽采情况综合分析表(更新至2013.3).zip

137.06 KB, 下载次数: 12

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2013-5-4 08:40 | 显示全部楼层
回复

使用道具 举报

 楼主| 发表于 2013-5-4 08:41 | 显示全部楼层
hwc2ycy 发表于 2013-5-4 08:40
附个附件嘛。

这么快!!好给力呀!!附件上传过了
回复

使用道具 举报

发表于 2013-5-4 15:41 | 显示全部楼层    本楼为最佳答案   
矿井瓦斯抽采钻场组抽采情况综合分析表(更新至2013.3).rar (99.98 KB, 下载次数: 6)
回复

使用道具 举报

 楼主| 发表于 2013-5-5 08:04 | 显示全部楼层
hwc2ycy 发表于 2013-5-4 15:41
你的表里有宏表。

直接把C定义成STRING类型,标题用公式来指定,或者指定TEXT也是可以的。

谢谢你帅哥,这个我也解决了。那段代码改成下面的就行了
  1. Sub ChartAdd()
  2. Dim A As Range
  3. Dim B As Range
  4. Dim C As String
  5. Dim D As Range

  6. Dim Sh As Worksheet
  7. Dim myChart As ChartObject
  8. For x = 3 To Sheets.Count
  9. With Sheets(x)
  10. .ChartObjects.Delete
  11. Set A = .Range(.Range("A3"), .Range("A3").End(xlDown))
  12. Set B = .Range(.Range("H3"), .Range("H3").End(xlDown))
  13. C = .Cells(1, 1).Text
  14. Set D = .Range("A:A").Find("衰减系数", , xlValues, 1)
  15. If Not D Is Nothing Then
  16. Set myChart = .ChartObjects.Add(0, Cells(D.Row + 4, 1).Top, Range("A1:H1").Width, Range(Cells(D.Row + 4, 1), Cells(D.Row + 23, 1)).Height)
  17. With myChart.Chart
  18. .ChartType = xlLineMarkers
  19. .SetSourceData Source:=Sheets(x).Range("C42"), PlotBy:=xlColumns
  20. .SeriesCollection.NewSeries
  21. .SeriesCollection(1).XValues = A
  22. .SeriesCollection(1).Values = B
  23. .ApplyDataLabels ShowValue:=True
  24. .HasTitle = True
  25. .ChartTitle.Text = C & "瓦斯抽采衰减曲线图"
复制代码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-20 03:30 , Processed in 0.466677 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表