如何用VBA对有公式的数据进行排列,从大到小,并excel最大值公式对齐! 下列公式如何修改!

查看: 3106|回复: 12
VBA保护有公式的单元格,代码修改
阅读权限50
在线时间 小时
VBA保护有公式的单元格,代码修改
(24.57 KB, 下载次数: 196)
09:56 上传
点击文件名下载附件
阅读权限95
在线时间 小时
本帖最后由 doitbest 于
11:23 编辑
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)&&
& & If Target.Locked = True Then
& && &&&PS = InputBox(&请输入密码&, &密码核对&)
& && &&&If PS && &999& Then Cancel = True: MsgBox &密码错误&: Exit Sub
& && &&&If PS = &999& Then ActiveSheet.Unprotect Password:=&999&
& & End If
阅读权限50
在线时间 小时
doitbest 发表于
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)&&
& & If Target.L ...
朋友你好,我点取消也,出现了“密码错误”的提示
我的意思是,在我附件上基础上,加上一个“密码错误“的提示。。。
阅读权限95
在线时间 小时
& & & & & & & &
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)&&'工作表事件,当单元格中有公式时,马上进行保护,并隐藏单元格中公式,若查看需要正确输入密码,方可查看
& & If Target.Locked = True Then
& && &&&PS = InputBox(&请输入密码&, &密码核对&)
& && & If PS = && Then Cancel = True: Exit Sub '屏蔽单元格已保护提示框
& && &&&If PS && &999& Then Cancel = True: MsgBox &密码错误&: Exit Sub '屏蔽单元格已保护提示框
& && &&&If PS = &999& Then ActiveSheet.Unprotect Password:=&999&
& & End If
阅读权限50
在线时间 小时
doitbest 发表于
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)&&'工作表事件,当单元 ...
非常好用,感谢老师的帮助!!!
阅读权限50
在线时间 小时
doitbest 发表于
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)&&'工作表事件,当单元 ...
朋友你好,感谢你的多次帮助。。。
但我把代码用到其它文件中,怎么会出现这样的错误呢。。。
未命名.JPG (18.78 KB, 下载次数: 3)
15:16 上传
随便在表一中,乱点几个空单元格,就会出现这样的错误。。。
(14.15 KB, 下载次数: 50)
15:16 上传
点击文件名下载附件
阅读权限95
在线时间 小时
Private Sub Worksheet_Change(ByVal Target As Range)&&'工作表事件,当单元格中有公式时,马上进行保护,并隐藏单元格中公式
& & On Error Resume Next
& & With ActiveSheet
& && &&&.Unprotect Password:=&120&
& && &&&.Range(&A:IV&).Locked = False
& && &&&.Cells.SpecialCells(xlCellTypeFormulas, 23).Locked = True&&'含公式单元锁定
& && &&&.Cells.SpecialCells(xlCellTypeFormulas, 23).FormulaHidden = True&&'隐藏
& && &&&.Protect Password:=&120&
& & End With
阅读权限20
在线时间 小时
doitbest 太厉害了
如果要含公式的单元格不能选中,该如何加代码呢?
我加了这个代码没有用
If Target.Locked = True Then
& && && & Target.Select = True
& && && & Target.Edit = True
& && & End If
阅读权限20
在线时间 小时
& & & & & & & &
doitbest 发表于
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)&&'工作表事件,当单元 ...
这个还是能看到公式怎应当怎么改哦
阅读权限95
在线时间 小时
参考7楼代码
玩命加载中,请稍候
玩命加载中,请稍候
Powered by
本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任! & & 本站特聘法律顾问:徐怀玉律师 李志群律师EXCEL中count和通用符号的应用_百度知道
EXCEL中count和通用符号的应用
a100),但这个是同一工作表中的,如果是不同工作表可以有这样的简便方法吗怎样把同一工作薄的100张工作表中的同一位置的数据统计出来,要简单的公式!比如count(a1
我有更好的答案
一、求字符串中某字符出现的次数:
例:求A1单元格中字符&a&出现的次数:
=LEN(A1)-LEN(SUBSTITUTE(A1,&a&,&&))
二、如何在不同工作薄之间复制宏:
1、打开含有宏的工作薄,点“工具/宏(M)…”,选中你的宏,点“编辑”,这样就调出了VB编辑器界面。
2、点“文件/导出文件”,在“文件名”框中输入一个文件名(也可用默认的文件名),注意扩展名为“.bas”,点“保存”。
3、将扩展名为“.bas”的文件拷贝到另一台电脑,打开EXECL,点“工具/宏/VB编辑器”,调出VB编辑器界面,点“文件/导入文件”,找到你拷贝过来的文件,点“打开”,退出VB编辑器,你的宏已经复制过来了。
三、如何在EXCEL中设置单元格编辑权限(保护部分单元格)
1、先选定所有单元格,点&格式&-&&单元格&-&&保护&,取消&锁定&前面的&√...
在工作表标签处按住CTRL键不放一一点击你想要设置公式的工作表,然后在你想要的位置设置公式(只在一份工作表中设置公式即可)
其他类似问题
为您推荐:
excel的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁查看: 439|回复: 13
EXCLE中,对B列中的数据在满足A列条件下批量求取最大值,使用什....
阅读权限20
在线时间 小时
EXCLE中,对B列中的数据在满足A列条件下批量求取最大值,使用什么公式可以快速求取,IF和MAX结合使用,但是语法错误,没有成功,求大神指教!
(17.92 KB, 下载次数: 10)
17:19 上传
如图所示,请问使用什么公式比较方面,尝试了IF、MAX,但是综合使用还是不行,求大神指教,谢谢!
17:18 上传
点击文件名下载附件
7.42 KB, 下载次数: 27
阅读权限95
在线时间 小时
=IF(A2=1,MAX(IF(B$2:B$14=B2,D$2:D$14)),&&)复制代码
阅读权限20
在线时间 小时
E2输入数组公式=IF(B1=B2,&&,MAX(IF($B$2:$B$14=B2,$D$2:$D$14,0)))
17:54 上传
点击文件名下载附件
8.02 KB, 下载次数: 12
阅读权限20
在线时间 小时
应该是黄色这一列对应的数据
本帖最后由 流浪者Sophia 于
17:56 编辑
你好&&我尝试了下&&数据都是一个,我需要的是 E2对应的数据应该是第一个货号对应的数据是98,第二个对应的数据是35,第三个货号对应的数据是52,是每个货号中对应数据最大的值,不是这一列数据中对应的最大的值,我按你的公式得到的都是321这个数字。
麻烦在帮我看看,优化优化,谢谢哈!
(13.83 KB, 下载次数: 10)
17:56 上传
阅读权限50
在线时间 小时
strSQL = &SELECT 商品货号,max(销量) as 值 From [Sheet1$] group by 商品货号&复制代码
阅读权限50
在线时间 小时
或者直接使用透视表。
阅读权限20
在线时间 小时
& & & & & & & &
黄色那一列
E2输入数组公式=IF(B1=B2,&&,MAX(IF($B$2:$B$14=B2,$D$2:$D$14,0)))
你好,按你的公式得到的都是同一个数值,但是我需要的不是这样的,具体的请参考图片黄色那一列数据,谢谢,麻烦在看看
(13.83 KB, 下载次数: 12)
17:58 上传
阅读权限20
在线时间 小时
或者直接使用透视表。
数据透视表如何实现,能具体点么,谢谢!
阅读权限50
在线时间 小时
04.jpg (52.6 KB, 下载次数: 6)
18:01 上传
阅读权限20
在线时间 小时
& & & & & & & &
哇 可以了,解决了!透气表里我以前从来都没有用到最大值这个选项,非常感谢,如果有公式可以实现的话也麻烦推荐推荐,谢谢哦!
玩命加载中,请稍候
玩命加载中,请稍候
Powered by
本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任! & & 本站特聘法律顾问:徐怀玉律师 李志群律师公式编辑器的使用方法
公式编辑器高级指南
北京市西城区德外大街4号,高等教育出版社,胡春林
01-6-14 上午 09:29:45
MS Office“公式编辑器”是Design
Science()设计的MathType的简化版本,用它可以十分方便地录入、编排各种数学公式及一些
简单的化学公式。其操作直观简单,即使是初学者也能够很容易掌握,是编写科技论文的好帮手。由于工作的需要,笔者经常需要录入、修改大量的数学公式,为了
尽可能地提高工作效率,不得不对公式编辑器进行了一番仔细研究,总结了几点心得体会,希望与经常使用公式编辑器的朋友们交流。
1. MathType简介
MathType是“公式编辑器”的功能强大而全面的版本。如果要经常在文档中编排各种复杂的数学、化学公式,则MathType是非常合适的选择。MathType用法与“公式编辑器”一样简单易学,而且其额外的功能使您的工作更快捷,文档更美观。
MathType 包括:
(1)Euclid字体设置了几百个数学符号。
(2)具有应用于几何、化学及其他方面的新样板和符号。
(3)专业的颜色支持。
(4)为全球广域网创建公式。
(5)将输出公式译成其他语言(例如:TeX、AMS-TeX、LaTeX、MathML及自定义语言)的翻译器。
(6)用于公式编号、格式设置及转换Microsoft
Word文档的专用命令。
(7)可自定义的工具栏,可容纳最近使用过的几百个符号、表达式和公式。
(8)可自定义的键盘快捷键。
MathType的共享版可以从如下地址下载:
http://download./sort.php?class=Other&softclass=Math。
2. 公式编辑器的常用技巧
(1)修改公式编辑器提示窗口显示次数。
对于经常录入大量数学公式的朋友来说,最讨厌的就是公式编辑器的提示:每当用户使用了若干次公式编辑器后,就会有一个公式编辑器提示对话框弹出来,问你是
否想了解有关“数学类型”的详细内容,如图1所示。若不选择“不再显示此信息”,则弹出间隔为100次;若选择“不再显示此信息”,则弹出间隔为500
次,非常烦人。经过多次的研究,笔者发现该对话框虽然无法禁止,但可以延长其发作间隔:将500次延长为32767次。修改方法如下:
图1 公式编辑器的提示
打开注册表,找到表项:
HKEY_CURRENT_USER\Software\Microsoft\Equation
Editor\3.0\Options\General
将MTUpgradeDialog的数值改为32767。
(2)用VBA控制文档中的公式。
总的来说,用VBA控制公式编辑器不太容易,特别是公式编辑器中的数据。下面几个小例子以Office
2000提供的公式编辑器3.01为例展示了控制公式编辑器的几种方法,希望能给对VBA感兴趣的同行一点启发。
例1:逐个打开文档中已有公式
Sub 编辑公式()
' 查找并编辑公式
On Error Resume Next '若有错误,执行下一条语句
Num_EQ = False '是否包含公式
判断文档中是否包含公式,若包含则进行编辑整理,否则退出退程序
For num = 1 To ActiveDocument.InlineShapes.Count
s = ActiveDocument.InlineShapes(num).OLEFormat.ClassType
If s = "Equation.3" Then
Num_EQ = True
Exit For '包含公式,退出循环
If Not Num_EQ Then '没有公式,退出子程序
Search: '开始查找inlineshap对象,包括公式、图形,等等
Selection.Find.ClearFormatting
With Selection.Find
.Text = "^g"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchByte = False
.MatchAllWordForms = False
.MatchSoundsLike = False
.MatchWildcards = True
Selection.Find.Execute
If Selection.InlineShapes(1).OLEFormat.ClassType = "Equation.3"
Then '如果是公式
Selection.InlineShapes(1).OLEFormat.DoVerb VerbIndex:=1
'打开公式编辑器
GoTo Search '若不是公式,继续查找
例2:公式转换,将文档中的字母符号公式转换为公式对象
Sub 公式转换()
Selection.Cut
Selection.InlineShapes.AddOLEObject ClassType:="Equation.3",
FileName:= _
"", LinkToFile:=False, DisplayAsIcon:=False
SendKeys "%"
SendKeys "{RIGHT}{down}{down}{down}{down}{enter}"
例3:向文档中插入新公式
Sub 插入公式()
' 插入新公式
Selection.InlineShapes.AddOLEObject ClassType:="Equation.3",
LinkToFile:= _
False, DisplayAsIcon:=False
例4:整理公式,即将公式“过一遍”,使其重新应用定义好的样式尺寸
Sub 整理公式()
' 自动整理公式格式
On Error Resume Next '若有错误,执行下一条语句
Num_EQ = False '是否包含公式
判断文档中是否包含公式,若包含则进行编辑整理,否则退出退程序
For num = 1 To ActiveDocument.InlineShapes.Count
s = ActiveDocument.InlineShapes(num).OLEFormat.ClassType
If s = "Equation.3" Then
Num_EQ = True
Exit For '包含公式,退出循环
If Not Num_EQ Then '没有公式,退出子程序
Search: '开始查找inlineshap对象,包括公式、图形,等等
Selection.Find.ClearFormatting
With Selection.Find
.Text = "^g"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchByte = False
.MatchAllWordForms = False
.MatchSoundsLike = False
.MatchWildcards = True
Selection.Find.Execute
If Selection.InlineShapes(1).OLEFormat.ClassType = "Equation.3"
Then '如果是公式
Selection.InlineShapes(1).OLEFormat.DoVerb VerbIndex:=1
'打开公式编辑器
If Tasks.Exists("公式编辑器") = True Then
'如果打开了公式编辑器,则激活
With Tasks("公式编辑器")
.WindowState = wdWindowStateNormal
SendKeys "%", True '发送推出指令
SendKeys "{DOWN}", True
SendKeys "{DOWN}", True
SendKeys "{ENTER}", True
GoTo Search '若不是公式,继续查找
例5:放大、缩小公式(也可用于行内图形)
Sub 缩小图形()
h = Selection.InlineShapes(1).Height
w = Selection.InlineShapes(1).Width
Selection.InlineShapes(1).Width = w * 0.99
Selection.InlineShapes(1).ScaleHeight =
Selection.InlineShapes(1).ScaleWidth
Sub 放大图形()
h = Selection.InlineShapes(1).Height
w = Selection.InlineShapes(1).Width
Selection.InlineShapes(1).Width = w * 1.01
Selection.InlineShapes(1).ScaleHeight =
Selection.InlineShapes(1).ScaleWidth
上述几个例子若配合快捷键使用,会大大提高处理公式的效率。但用VBA处理公式毕竟功能有限,若希望能更全面地用程序控制公式,需要使用MathType。
化学反应式、化学结构式的编排
用公式编辑器可以编排化学反应式和化学结构式,已经有人进行了这方面的尝试,但笔者认为,由于公式编辑器本身的局限性,用它来排化学反应式和化学结构式实
在很勉强,且效率低下。在这方面,MathType要比公式编辑器更胜一筹。其实,如果要经常编排化学反应式和化学结构式,如Visio,
SmartDraw,甚至WPS
Office,还有不计其数的专门编排化学结构式的小软件。
4. 常用快捷键指南
毋庸置疑,快捷键的使用能极大地提高录入公式的效率,公式编辑器的帮助文件中提供了全面的快捷键指南,这里只列出了一些比较重要的和帮助文件中不易找到的快捷键。
矩阵的对齐没有快捷键,普通的对齐命令对其无效,所以有些朋友往往无法对齐矩阵中的公式,其实操作很简单:执行“格式-矩阵”命令,即可弹出矩阵对齐对话框,按照我们的需要操作就行了。
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。}

我要回帖

更多关于 excel最大值公式 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信