excel vba 常见问题 001 。用命令按扭打印一个 sheet1 中 B2:M30 区域中的内容? 我想在 Sheet2 中制件一个命令按扭,打印表 Sheet1 中的[B2:M30] 区域中的内容? 解答:可以将打印区域设为 b2 : m30 ,然后打印,如: sheets("sheet1").printarea="b2:m30" sheets("sheet1").printout 随手写的,你可以试试看。最简单的方法是:你先录制宏,在录制宏过程中,跑到页面设置里面,把打印范围设置到你想要的范围。然后退出,停止录制宏, 你就可以得到一些代码! 002 。能否对一列中的文字统一去掉最后一个字?这些文字不统一,有些字数多,有些字数少。如何处理?我用{"&-} 不行解答: =REPLACE(A1,LEN(A1),1," ")(在过渡列进行) 003. 能否根据单元格数值自动标记序号? 各位大佬,一工作表有两列,“序号”及“金额”,能否将金额不等于 0的行自动标上序号呢?如无现成的函数, 应怎样设置? 解答: Dim xuhao As Integer xuhao =1 Range("b2").Select Do While Selection <> "" If Selection <> 0 Then = xuhao xuhao = xuhao +1 End If (1, 0).Range("a1").Select Loop 004. 求教自定义函数查询了一些自定义函数的例子都是单变量的。自定义函数能否建立“(As Range) As Interger ”的函数,应该可以的,请各位大师赐教!请以“∑ x2”为例,万分感谢! (该用" For Each ...Next" ,就是还不知道如何引用 Range 中的每个值,请高手指点。) 解答:参数使用 Range 而函数值为 Integer 是可以的用 for each next 循环思路也是对的,应该这样作: dim rg as range dim ivalue as integer for each rg in参数区域 ivalue=ivalue+ next 函数= ivalue 大概意思如此,但没有加入防错处理,你自己先试试看,有问题在问。又问:试了一天,还是不行。 Public Function x2(rng As Range) As Integer Dim rng As Range Dim ivalue As Integer For Each rng In ivalue = ivalue + ^2 Next x2= ivalue End Function 还望您的帮助。解答: Public Function SUMX2(rng As Range) As Integer '你的错误有几项: ',否则在工作表中引用函数产生歧义, excel 以为你引用单元格', rng 本来是定义参数,在过程中不应出现重名变量' 已被定义为 range 对象变量,实际意义是一 range 引用,不能再用 引用, range 的 rang e 属性是什么呢,没有吧'函数我已经给你改了,基本能用 Dim rg As Range Dim ivalue As Integer For Each rg In rng ivalue = ivalue + ^2 Next SUMX2 = ivalue End Function 结果:调试成功!,非常感谢! 005. 判斷字符串的包含性用什么命令“ abcdefg ”是否包含“ abc ”? 解答: If (1, "abcdefg", "abc") <> 0 Then MsgBox "包含" 006. 利用背景实现套打的解决方案利用背景套打主要在于数据打印位置的确定,关键就是要使图片和实物之间的尺寸保持一致,这里我引入一个中间参照物—空白表(只有表格线的表)。具体操作以套打支票为例说明: (1) 将支票扫描成图片。(2) 打印一个空白表,使其与支票尺寸一致(需反复调整打印,也可行、列分别打印)。(3) 用“画图”的缩放功能调整图片大小,导入 excel 作背景,并使其与空白表大小一致(亦需反复调整导入, 每次均用原图缩放,再另存为一个文件)。(4) 根据图片背景调整好单元格,填入数据后套打支票,效果是匹配度达 99% 。(5) 由于每次都是用原图缩放,故可取得缩放比例作为参数,再套打其他表格时,即
excel vba常见问题 来自淘豆网m.daumloan.com转载请标明出处.