Excel精英培训网

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

[已解决]初学有误求帮助

[复制链接]
发表于 2012-8-11 23:33 | 显示全部楼层 |阅读模式
Sub s1()
Dim x As Integer, ya As Integer
For x = 7 To 26 Step 19
For y = 5 To 16
If x <> 6 Then
Cells(x, y) = Evaluate("=ROUND(CELLS(x-1,y)+CELLS(x+1,Y),1)")
   End If
   Next y
   Next
End Sub
初学,这是根据上次贴的回答引用,结果运算出错误,求解,我的意思就是这样E7=E6+E8 F7=F6+F8依此类推在就是想叫他E7到J7,L7到Q7  E26到J26  L26到Q26这个单元格区域的值都是这样对应单元格相加
最佳答案
2012-8-12 00:53
本帖最后由 lzclzch 于 2012-8-12 00:54 编辑

Sub s1()
Dim x As Integer, y As Integer
For x = 7 To 26 Step 19
For y = 5 To 17
If x <> 6 Then
Cells(x, y) = Round(Cells(x - 1, y) + Cells(x + 1, y), 1)
   End If
   Next y
   Next
End Sub
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
 楼主| 发表于 2012-8-11 23:35 | 显示全部楼层
回复

使用道具 举报

发表于 2012-8-12 00:53 | 显示全部楼层    本楼为最佳答案   
本帖最后由 lzclzch 于 2012-8-12 00:54 编辑

Sub s1()
Dim x As Integer, y As Integer
For x = 7 To 26 Step 19
For y = 5 To 17
If x <> 6 Then
Cells(x, y) = Round(Cells(x - 1, y) + Cells(x + 1, y), 1)
   End If
   Next y
   Next
End Sub

新建 Microsoft Excel 工作表.rar

6.28 KB, 下载次数: 4

回复

使用道具 举报

 楼主| 发表于 2012-8-12 10:16 | 显示全部楼层
lzclzch 发表于 2012-8-12 00:53
Sub s1()
Dim x As Integer, y As Integer
For x = 7 To 26 Step 19

谢谢你的答案,能否解说下我错在哪里?还有 你这个没把第六个空开?我要1到5 7到12 六列不出现数字
回复

使用道具 举报

 楼主| 发表于 2012-8-12 10:39 | 显示全部楼层
lzclzch 发表于 2012-8-12 00:53
Sub s1()
Dim x As Integer, y As Integer
For x = 7 To 26 Step 19

还有个问题请教下,我的第六行与第8行里面的数字如果是公式得出的随机数,那么我在宏里再相加出的值跟第七行的不一样啊?
回复

使用道具 举报

发表于 2012-8-12 11:20 | 显示全部楼层
1、随机函数,每次单元格的数变化后就产生了新的随机数,所以会产生数值不一样的结果
**************************************************************************************
2、从7开始循环就没有必要去判断X=6
Sub s2()
Dim x As Integer, y As Integer
For x = 7 To 26 Step 19
For y = 5 To 17
Cells(x, y) = Round(Cells(x - 1, y) + Cells(x + 1, y), 1)
   Next y
   Next
End Sub
*******************************************************************************
Evaluate:
将一个 Microsoft Excel 名称转换为一个对象或者一个值。 语法
表达式.Evaluate(Name)
表达式   一个代表 Worksheet 对象的变量。
参数
名称必选/可选数据类型描述
Name必选Variant使用 Microsoft Excel 命名约定的对象名称。

返回值
Variant
说明
该方法可使用下列 Microsoft Excel 名称类型:
  • A1 格式引用。可以通过 A1 格式表示法引用单个单元格。所有引用均视为绝对引用。
  • 区域。在引用中可以使用区域、交集和联合运算符(分别为冒号、空格和逗号)。
  • 定义的名称。可用宏语言指定任何名称。
  • 外部引用。可以使用 ! 运算符引用另一工作簿中的单元格或已定义的名称,例如,Evaluate("[BOOK1.XLS]Sheet1!A1")
  • 图表对象。可以指定任何图表对象名称(如“Legend”、“Plot Area”或“Series 1”),以访问该对象的属性和方法。例如,Charts("Chart1").Evaluate("Legend").Font.Name 返回图例中所用字体的名称。

新建 Microsoft Excel 工作表.rar

8.24 KB, 下载次数: 5

回复

使用道具 举报

 楼主| 发表于 2012-8-12 21:07 | 显示全部楼层
lzclzch 发表于 2012-8-12 11:20
1、随机函数,每次单元格的数变化后就产生了新的随机数,所以会产生数值不一样的结果
******************* ...

哦哦,错了 说错话了  是从7开始到地12没数值  因为我想空一列  谢谢您
回复

使用道具 举报

 楼主| 发表于 2012-8-12 21:08 | 显示全部楼层
哈喽 发表于 2012-8-12 21:07
哦哦,错了 说错话了  是从7开始到地12没数值  因为我想空一列  谢谢您

随机数我知道,我的意思就是不管什么随即你第6行跟第八行随机但在第七行你相加肯定是6 8之和 可加起来不是
回复

使用道具 举报

发表于 2012-8-12 21:26 | 显示全部楼层
本帖最后由 lzclzch 于 2012-8-12 21:27 编辑

5+5=10
如果没有随机函数不是可以吗

新建 Microsoft Excel 工作表.rar

8.4 KB, 下载次数: 1

回复

使用道具 举报

 楼主| 发表于 2012-8-12 23:09 | 显示全部楼层
lzclzch 发表于 2012-8-12 21:26
5+5=10
如果没有随机函数不是可以吗

可是换成随机的就不对了?
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-19 06:51 , Processed in 0.316064 second(s), 9 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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