4个带参数的5个语句该怎样写?
sub 排序(cansu1,cansu2,cansu3,cansu4 AS STRING)
Sheets("工作").Select: Cells.Select '选择总个表作为排序的区间 cansu1,cansu2,cansu3,为列名 cansu4为xlAscending 或xlDescending
Selection.Sort Key1:=Range("cansu1"), Order1:=cansu4, Header:=xlYes, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, SortMethod:=xlPinYin, DataOption1:=xlSortNormal '按 E列长警值有标题行升序排序
Range("B1:B120").Select: Selection.copy '选择拷贝对应的物品名称
Sheets("有关结果").Select: Columns("cansu2:cansu2").Select '选择对应的物品名称的粘贴位置
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False '将长警值的名称数值性粘贴有关结果的E列
Sheets("工作").Select: Range("cansu11:cansu1120").Select: Selection.copy '选择拷贝对应的排序值
Sheets("有关结果").Select: Columns("cansu3:cansu3").Select '选择拷贝对应的排序值的粘贴位置
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False '将长警值的排序值 数值性粘贴有关结果的F列
end sub
这个子程序是供调用的 但我只会按照通常的规则写 在同一个工作簿同一个模块内 call排序(D,C,D,xlAscending) 不能运行 ,查来查去是 带参数的语句写法不对 我实在找不到规则 盼请高人指教
sub 排序(cansu1,cansu2,cansu3,cansu4 AS STRING)
Sheets("工作").Select: Cells.Select '选择总个表作为排序的区间 cansu1,cansu2,cansu3,为列名 cansu4为xlAscending 或xlDescending
Selection.Sort Key1:=Range("cansu1"), Order1:=cansu4, Header:=xlYes, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, SortMethod:=xlPinYin, DataOption1:=xlSortNormal '按 E列长警值有标题行升序排序
Range("B1:B120").Select: Selection.copy '选择拷贝对应的物品名称
Sheets("有关结果").Select: Columns("cansu2:cansu2").Select '选择对应的物品名称的粘贴位置
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False '将长警值的名称数值性粘贴有关结果的E列
Sheets("工作").Select: Range("cansu11:cansu1120").Select: Selection.copy '选择拷贝对应的排序值
Sheets("有关结果").Select: Columns("cansu3:cansu3").Select '选择拷贝对应的排序值的粘贴位置
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False '将长警值的排序值 数值性粘贴有关结果的F列
end sub
这个子程序是供调用的 但我只会按照通常的规则写 在同一个工作簿同一个模块内 call排序(D,C,D,xlAscending) 不能运行 ,查来查去是 带参数的语句写法不对 我实在找不到规则 盼请高人指教
解决方案 »
- SetWindowPos的参数SWP_ASNCWINDOWPOS的16进制的值是多少
- 怎么在listview控件的ListItem对象加小图标..
- 求一段查找算法
- 很简单~!用一个已知日期 减去今天的日期(变化的)
- 关于 install sheild
- 关于往MSHFlexGrid中添加条目的问题。急!!!
- 请问如何把datagrid控件中一行中的数据显示在几个edit控件中?谢谢
- 为什么会这样呢???请帮帮我谢谢各位朋友了
- 请高手介绍一个比较好用的图表控件,并介绍一下VB中如何实现气泡状的窗体或提示?
- C#访问MySQL数据库问题
- 水晶报表的设计问题
- 新手请教新手问题,请大虾不吝赐教!谢谢!(计算器问题)
sub 排序(cansu1,cansu2,cansu3,cansu4 AS STRING)
Sheets("工作").Select: Cells.Select
'选择总个表作为排序的区间 cansu1,cansu2,cansu3,为列名 cansu4为xlAscending 或xlDescending
'上面参数中: cansu4 AS STRING /表示 cansu4 为字符串,
'但是你上面注解中说 cansu4为xlAscending 或xlDescending 有问题.
Selection.Sort Key1:=Range("cansu1"), Order1:=cansu4, Header:=xlYes, _
'cansu1为参数,此处不能用 "cansu1" 这表示字符串.
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
SortMethod:=xlPinYin, DataOption1:=xlSortNormal
'按 E列长警值有标题行升序排序
Range("B1:B120").Select: Selection.copy
'选择拷贝对应的物品名称
Sheets("有关结果").Select: Columns("cansu2:cansu2").Select
'选择对应的物品名称的粘贴位置
'此处也是一样. "cansu2:cansu2" 表示字符串,应该除去引号. cansu2 & ":" & cansu2
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
'将长警值的名称数值性粘贴有关结果的E列
Sheets("工作").Select: Range("cansu11:cansu1120").Select: Selection.copy '选择拷贝对应的排序值
Sheets("有关结果").Select: Columns("cansu3:cansu3").Select '
'选择拷贝对应的排序值的粘贴位置
'此处也是一样. "cansu3:cansu3" 表示字符串,应该除去引号. cansu3 & ":" & cansu3
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False '将长警值的排序值 数值性粘贴有关结果的F列
end sub 以上做了部分修改:
主要LZ要弄清楚以下二个问题点:
1.参数说明数据类型的,传入数据与参数的类型必须一致.
2.在子程序中,参数的引用就象变量的引用是一样的,不用再加上引号.
1. Selection.Sort Key1:=Range("cansu1"),
2. Order1:=
3.Range("cansu1 1:cansu1 120").Select:
还有cansu4(为xlAscending 或xlDescending) 要怎么定义?
1. Selection.Sort Key1:=Range("cansu1"),
2. Order1:= cansu4
3.Range("cansu1 1:cansu1 120").Select:
还有cansu4(为xlAscending 或xlDescending) 要怎么定义?