vba运行问题求解

vba运行问题求解,第1张

分析可能的原因,12 张表中的VBA代码默认的处理对象应当都是各自的表,你现在在其中一张表上用宏来启动VBA代码,当前表就是放入12个形状的这张表,那么自然就没有另外12张表什么事了,解决办法是在所有VBA代码中对所有对象的引用都要加上表对象限定符。另外用VBA编程,学会使用单步执行调试,就没有解决不了的问题。

两种方法:第一,通过传参数。参数在子程序里被修改的话,主程序的值也相应改掉(当然传值方法除外)。第二,子程序设置返回值, private sub() as string { sub="ABCD" }

你试试下面这样行不行:

Sub 判断_Click()

For I = Range("A100000")End(xlUp)Row To 3 Step -1

If Range("b" & (I + 1)) = 5 Then

Range("q" & I) = "优秀"

Else

Exit For

End If

Next

End Sub

Sub forecast_Y()

Dim EX “定义变量 EX

Dim NUM "“定义变量 MUN

Dim yy “定义变量 yy

EX = InputBox("请输入广告费:") 变量赋值,EX的值=你输入到inputbox里面的值

NUM = InputBox("请输入销售员数:") 变量赋值,NUM的值=你输入到inputbox里面的值

Range("C17")Value = Range("b1")Value ” 将B1的值赋予C17

Range("f17")Value = EX “将EX的值赋予F17

Range("f18")Value = NUM ”将NUM的值赋予F18

yy = (Range("d15")Value) EX + (Range("e15")Value) NUM + (Range("f15")Value)

“变量赋值,变量YY的值=D15EX+E15NUM+F15

Range("f19")Value = yy ”将YY的值赋予F19

End Sub

MsgBox ("请点击销售网点图中的按钮进行分析") “d出确认窗口,内容为" "里面的内容

Sheets("界面")Select “选择“SHEET界面” 工作表

Sub chang_adtab()

Range("A5:A16")Select ”选择A5到A16单元格

SelectionCopy “将选定的范围复制

Range("B1")Select ”选择B1

Sheets("adtab")Select “选择sheetadtab 工作表

Range("B9")Select ”选择B9单元格

ActiveSheetPaste “激活 粘贴

ApplicationCutCopyMode = False ”剪切复制模式=假,就是非剪切模式

Range("C6")Select “选择C6单元格

ActiveCellFormulaR1C1 = "=Tsales!r[-5]c[-1]" ”激活的单元格(c6)=sheetTSALES里面的 B1(C6列数-1行数-5)

Sheets("Tsales")Select “选择sheetTSALES

Range("E5:E16")Select ”选择E5到E16

SelectionCopy “复制

Sheets("adtab")Select "选择sheetadtab

Range("C9")Select "选择C9

ActiveSheetPaste “激活粘贴

ApplicationCutCopyMode = False ”非剪切模式

Range("A1")Select “选择A1

你这个是录制的宏吧,好多多余的代码

以上就是关于vba运行问题求解全部的内容,包括:vba运行问题求解、VBA如何使用主过程和子过程、懂vba的师傅来帮帮忙。怎样改变程序的执行顺序。以下面代码为例;等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/9454529.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存