Excel精英培训网

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

[分享] 【烟花原创】VBA零基础之第71篇 单元格对象Range(十五)

[复制链接]
发表于 2014-1-5 16:32 | 显示全部楼层 |阅读模式
DataSeries 方法
 在指定区域内创建数据系列
 语法:DataSeries(Rowcol, Type, Date, Step, Stop, Trend)
  Rowcol 可选,可以是 xlRows xlColumns 常量,分别表示按行或列输入数据系列。
   如果省略本参数,则使用区域的大小和形状。
  Type 可选 XlDataSeriesType 数据序列的类型。
   xlAutoFill 4 按照“自动填充”设置对系列进行填充。
   xlChronological 3 用数据值进行填充。
   xlDataSeriesLinear -4132 扩展值。
    假定一个加法级数(例如,“1, 2”被扩展为“3, 4, 5”)。
   xlGrowth 2 扩展值。
    假定一个乘法级数(例如,“1, 2”被扩展为“4, 8,16”)。
  Date 可选 XlDataSeriesDate
   如果 Type 参数为 xlChronological,则 Date 参数指示单步执行日期单位。
    xlDay 1
    xlMonth 3
    xlWeekday 2 工作日
    xlYear 4
  Step 可选 Variant 系列的步长值。默认值为 1
  Stop 可选 Variant 系列的终止值。如果省略本参数,Microsoft Excel 将填满整个区域。
  Trend 可选,如果为 True,则创建一个线性趋势或增长趋势。
    如果为 False,则创建一个标准数据序列,默认值为 False
  实现后的效果,与之前讲到的AutoFill方法有很多相同之处。
 示例:
  ActiveSheet.UsedRange.Clear
  With Range("a1")
   .Value = 1
   .Interior.Color = 1234
   .Resize(12).DataSeries step:=10
   '数值填充以10递增
  End With
  With Range("b1")
   .Value = #1/1/2014#
   .Resize(12).DataSeries Type:=xlChronological, Date:=xlMonth
   '日期以一月递增
  End With
  With Range("c1")
   .Value = #1/1/2014#
   .Resize(12).DataSeries Type:=xlChronological, Date:=xlYear, step:=3
   '日期以三年递增
  End With
  With Range("d1")
   .Value = 1
   .Offset(1).Value = 2
   .Resize(12).DataSeries Type:=xlDataSeriesLinear
   '线性增长
  End With
  With Range("e1")
   .Value = 1
   .Offset(1).Value = 2
   .Resize(12).DataSeries Type:=xlGrowth, Trend:=True
   '趋势增长
  End With
  With Cells(Rows.Count,1).End(xlUp).Offset(2)
   .Resize(, 2).Value = Array(1, 2)
   .Offset(1).Resize(, 2).Value = Array(2, 4)
   .Resize(6, 2).DataSeries Type:=xlGrowth, Trend:=True
   '多列趋势增长
  End With
 效果截图:
   71-1.jpg
                              

  示例中没有用到Stop参数,有兴趣的童鞋可以试试。

Delete 方法
 删除对象。
 语法:Delete(Shift)
  Shift 可选 Variant 仅用于 Range 对象,指定如何调整单元格以替换删除的单元格。
   可以为以下 XlDeleteShiftDirection 常量之一:xlShiftToLeft xlShiftUp
   该参数对应下图中的红色方框内的两个选项。
     71-2.jpg

    也就是删除时,是右侧左移还是下方上移。
   另外删除整行,整列就是用到entirerow,entirecolumn来实现。
   如果省略此参数,Microsoft Excel 将根据区域的形状确定调整方式。
 示例:
  Range("a1:b2").Deleteshift:=xlShiftToLeft
  ‘删除A1:B2区域,右侧单元格往左移
  Range("c4:e6").Deleteshift:=xlShiftUp
  ‘删除C4:E6区域,下方单元格往上移
  Range("a16:a17").EntireRow.Delete
  ‘删除A16:A17单元格所在的行
 效果如下:
   71-3.jpg


发表于 2014-1-5 16:38 | 显示全部楼层
回复

使用道具 举报

发表于 2014-4-24 11:17 | 显示全部楼层
回复

使用道具 举报

发表于 2014-6-11 16:07 | 显示全部楼层

支持烟花
回复

使用道具 举报

发表于 2014-6-18 12:38 | 显示全部楼层
回复

使用道具 举报

发表于 2014-6-19 09:51 | 显示全部楼层
{:1112:}
回复

使用道具 举报

发表于 2014-6-27 07:56 | 显示全部楼层
谢谢分享,标记,七十一
回复

使用道具 举报

发表于 2015-2-15 23:59 | 显示全部楼层
大晚上来支持
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-2 20:02 , Processed in 0.278157 second(s), 9 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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