当前位置:首页 » 文件管理 » 怎样看vba公式内容
扩展阅读
可以驯化动物原始人游戏 2025-05-18 04:06:20
qq里可以打字的图片 2025-05-18 03:53:44

怎样看vba公式内容

发布时间: 2022-10-16 23:10:48

Ⅰ 如何将vba中的计算结果值,双击后显示计算公式

如果用你现在的代码计算得到的值,不可能显示公式。用VBA向单元格填写公式才行:
Sub cal()
For i = 1 To 5
For j = 1 To 2
Cells(i, j + 2).FormulaR1C1 = "=RC[-2]+RC[-1]"
Next
Next
End Sub
简单一点的:
Sub cal()
Range("C1:D5").FormulaR1C1 = "=RC[-2]+RC[-1]"
End Sub
得到相同的效果

Ⅱ excel VBA提取工作表中单元格公式内容

利用vba的自定义函数吧
在工作表界面作如下操作:
按Alt+F11->打开vixual basic编辑器
在打开的vixual basic编辑器窗口作如下操作:
标题栏->视图->工程资源管理器(单击打开)
插入-模块(这时会插入一个名称为“模块1”的模块)
右边出现一大片空白区域
将下述代码复制->粘贴进去:
Function Hasf(rng As Range)
If rng.HasFormula Then
Hasf = rng.Formula
Else
Hasf = ""
End If
End Function
'这样在工作表界面就可以直接用函数hasf了,跟excel内置函数一样使用
'如A2里有公式=IF(A1="","",A3+A4)
'那么B2里输入公式=hasf(A2) 确定即可

Ⅲ VBA公式解释

这是一个画任意多边形的程序,写程序的人已经标明了每个部分表示的动作了。我给你少位补充一下

OptionExplicit
DimlabelW#,labelH#,A(),l#,t#,w#,h#,m#,x#,i&,j&,temp&
Subtest()
'定义freeForm为多边形对象,msg为你录入的变狼
DimfreeFormAsFreeformBuilder,msg

'选择,
msg=Application.InputBox("1曲线,2面积","选择",2)
'如果msg不等于1或者2就退出程序
IfNot(msg="1"Ormsg="2")ThenEnd
'如果msg=1,那么msg=1,否则msg=0
msg=IIf(msg="1",msg*1,msg-2)
'源和目的
'清理,具体代码见clear过程,我估计应该是删除表中的对象
Callclear
'选择数据范围A,A表示A1单元格周围有数据的部分
A=Range("a1").CurrentRegion
'得到所选择的区域在屏幕上的左,上,宽,高的像素点坐标
WithSelection
l=.Left:t=.Top:w=.Width:h=.Height
EndWith
'数据标签的宽高
labelW=40
labelH=18
'水平轴,这个不知道是什么程序,没有代码
CallhorizontalAxis
'垂直轴,这个不知道是什么程序,没有代码
CallverticalAxis

'连接节点
Fori=2ToUBound(A)
temp=l
'1)首节点。A(i,2)/m*h的含义?当前数据/最大数据=当前选取/最大选取
'创建多边形对象,并开始画第一个点
SetfreeForm=ActiveSheet.Shapes.BuildFreeform(msoEditingAuto,temp,t+h-A(i,2)/m*h)
'2)其它节点
'接下来其他的点,循环所选择的区域A的第2列
Forj=3ToUBound(A,2)
'temp加上一个固定值x,x没有写是多少
temp=temp+x
'画其他的节点
freeForm.AddNodesmsg,msoEditingAuto,temp,t+h-A(i,j)/m*h
Nextj
'3)固定。带!!的是面积
Ifmsg=0Then
freeForm.AddNodesmsg,msoEditingAuto,l+w,t+h'右下!!
freeForm.AddNodesmsg,msoEditingAuto,l,t+h'左下!!
freeForm.AddNodesmsg,msoEditingAuto,l,t+h-A(i,2)/m*h'起点!!
EndIf
'4)设置任意多边形(Shape对象)
WithfreeForm.ConvertToShape
'随机获得颜色的RGB值temp
temp=RGB(100+Rnd*156,100+Rnd*156,100+Rnd*156)
'修改多边形的线条颜色为temp
.Line.ForeColor.RGB=temp
’如果msg=0,即你输入的是2
Ifmsg=0Then
'线条颜色和上面一样
.Fill.ForeColor.RGB=temp'!!
'透明度60%
.Fill.Transparency=0.6'!!
EndIf
EndWith
'+图例,这个同样也不知道什么什么意思,没有代码
Calllegend(i,A(i,1),temp)
Nexti

'置于顶层
ActiveSheet.Shapes("horizontalAxis").ZOrdermsoBringToFront
ActiveSheet.Shapes("verticalAxis").ZOrdermsoBringToFront
EndSub

Ⅳ VBA 显示公式的值的表达式

你好!
这个很容易,但是我想这不是你要的效果。
双击单元格,会显示所有参与运算的单元格。
或者吧工具-选项-视图中的公式打勾,效果相同,只是不用双击了。
再有工具-公式审核-追踪引用单元格,也有类似效果。
希望对你有所帮助,望采纳。

Ⅳ 怎么查看excel的VBA代码

按住ALT+F11弹出VBA编辑器。
只是要破解么?
新建一个Excel工作簿,Alt+F11 打开VBA编辑器,新建一个模块 ,复制以下代码,注意如提示变量未定义,则把Option Explicit行删除即可,经测试已经通过.
'移除VBA编码保护
Sub MoveProtect()
Dim FileName As String
FileName = Application.GetOpenFilename("Excel文件(*.xls & *.xla),*.xls;*.xla", , "VBA破解")
If FileName = CStr(False) Then
Exit Sub
Else
VBAPassword FileName, False
End If
End Sub
'设置VBA编码保护
Sub SetProtect()
Dim FileName As String
FileName = Application.GetOpenFilename("Excel文件(*.xls & *.xla),*.xls;*.xla", , "VBA破解")
If FileName = CStr(False) Then
Exit Sub
Else
VBAPassword FileName, True
End If
End Sub
Private Function VBAPassword(FileName As String, Optional Protect As Boolean = False)
If Dir(FileName) = "" Then
Exit Function
Else
FileCopy FileName, FileName & ".bak"
End If
Dim GetData As String * 5
Open FileName For Binary As #1
Dim CMGs As Long
Dim DPBo As Long
For i = 1 To LOF(1)
Get #1, i, GetData
If GetData = "CMG=""" Then CMGs = i
If GetData = "[Host" Then DPBo = i - 2: Exit For
Next
If CMGs = 0 Then
MsgBox "请先对VBA编码设置一个保护密码...", 32, "提示"
Exit Function
End If
If Protect = False Then
Dim St As String * 2
Dim s20 As String * 1
'取得一个0D0A十六进制字串
Get #1, CMGs - 2, St
'取得一个20十六制字串
Get #1, DPBo + 16, s20
'替换加密部份机码
For i = CMGs To DPBo Step 2
Put #1, i, St
Next
'加入不配对符号
If (DPBo - CMGs) Mod 2 <> 0 Then
Put #1, DPBo + 1, s20
End If
MsgBox "文件解密成功......", 32, "提示"
Else
Dim MMs As String * 5
MMs = "DPB="""
Put #1, CMGs, MMs
MsgBox "对文件特殊加密成功......", 32, "提示"
End If
Close #1
End Function

Ⅵ 怎么查看excel的vba代码

)对上的长长的编辑栏中就会显示这些公式的。如果说的是VBA的代码,可以右键点击表的名称....,在列标号(A、B、C.点中有函数公式的单元格后,选“查看代码”

Ⅶ 求助如何用vba判断某单元格是否带公式

找到两种方法,但是我想要得到这个单元格的具体公式.两种方法:1。利用HasFormula属性,可以判断单元格内是否有公式。2。利用计算公式前面都有等号“=”这一性质来判断。sub pd1()dim mrg as rangeset mrg = range("A1") '指定任意单元格if mrg.HasFormula =True Then MsgBox "单元格"& Mrg.Address & " 内有计算公式"Else MsgBox "单元格内没有计算公式"end if end sub--------------------------------------------------------------------------------sub pd2()dim mrg as rangeset mrg = range("A1") '指定任意单元格if Left(mrg.HasFormula ,1)= "=" Then MsgBox "单元格"& Mrg.Address & " 内有计算公式"Else MsgBox "单元格内没有计算公式"end if end sub