level 7
问:
我想用一个判断语句,判断一个单元格的内容中包含某个字或词以确定其为某类型,如:有一个表的A3中单元格中的内容为"去北京出差",则经过判断"出差"一词来确定该条数据为出差类.A4单元格中的内容为"去深圳旅游",则通过判断"旅游"一词来确定该条数据为旅游类.
答:
可以用MACRO解决。代码如下(经过测试可用):
Sub Chuchai()
Sheets("Sheet1").Select
lastrow = [A65536].End(xlUp).Row'作用是寻找到本表格的最后一行
For i = 1 To lastrow
If InStr(Cells(i, 1), "出差") > 0 Then
Cells(i, 2) = "出差类"
End If
Next i
End Sub
2009年11月26日 22点11分
1
level 7
问:EXCEL的VBA中,让窗体的关闭按纽失效?
在EXCEL里做了个窗体,不过根据实际需求,需要使窗体右上角那个关闭按钮(那个X)失效,请问应该如何做?
答:
写上下面的代码就可以了:
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
Cancel = 1
End Sub
2009年11月26日 22点11分
2
你好 对于完全不懂这软件的新手来说,应该怎么做。我想学,可是没人教,而且我完全看不懂,
2013年10月16日 05点10分
@彼岸花崽: 谢谢你 下载好了
2015年05月07日 08点05分
www leawo.cn 学习看这里
2015年05月11日 06点05分
level 7
问:如何在工作表之间使用超级连接
答:
首先须要在被引用的其他工作表中相应的部分插入书签,然后在引用工作表中插入超级链接,注意在插入超级链接时,可以先在“插入超级链接”对话框的“链接到文件或URL”设置栏中输入目标工作表的路径和名称,再在“文件中有名称的位置”设置栏中输入相应的书签名,也可以通过“浏览”方式选择。完成上述操作之后,一旦使用鼠标左键单击工作表中带有下划线的文本的任意位置,即可实现中文Excel2000在自动打开目标工作表并转到相应的位置处,这一点与WORD的使用很相似。
在2007中不必加书签.
2009年11月26日 22点11分
3
你好,我想问一个关于excel的问题,一个工作表中有一列编号,我想提取编号中前5位数字相同的行的某列然后相加求和返回编号前5个数字及求和结果绘成另外的表...怎么做???
2013年10月04日 07点10分
你好,我是Excel初学者,很初级的那种,求教程帖子,感谢
2013年10月22日 08点10分
我觉得狸窝宝典里面的哪个更容易耶 想知道怎么做的朋友可以看
@彼岸花崽
2015年05月21日 14点05分
level 7
问:在VBA中,如何让"退出"按纽(那个右上角的X)来关闭窗体?
答:
则可以这样写:
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
'CloseMode参数表明事件发生的原因
'若其值等于vbFormControlMenu则意味着用户单击了X图标按钮
If CloseMode = vbFormControlMenu Then
MsgBox "请单击""退出""按钮关闭本窗体"
Cancel = True
End If
End Sub
Private Sub Cmd_Exit_Click() '点击退出按纽
Unload Me
End Sub
2009年11月26日 22点11分
4
表示有些看不懂
2016年06月20日 01点06分
原谅我的智商,还是乖乖去狸窝吧
2016年09月06日 02点09分
level 7
问:怎样在指定的工作表中计算出最大行数或列数.
答:
Sub te()
Debug.Print "============="
Sheet1.Activate '指定第一个工作表
IC = [AZ5].End(xlToLeft).Column '读取当前表第5行的非0最大列数。
R = Range("c65536").End(xlUp).Row '这是读取当前表C列的非0最大行数:
Debug.Print IC
Debug.Print R
Sheet2.Activate '指定第二个工作表
IC = [AZ5].End(xlToLeft).Column '读取当前表第5行的非0最大列数。
R = Range("c65536").End(xlUp).Row '这是读取当前表C列的非0最大行数:
Debug.Print IC
Debug.Print R
End Sub
作者:山野雪人
2009年11月26日 22点11分
5
为什么不能用userrange?
2014年09月20日 02点09分
谢谢楼上推荐
2016年01月13日 08点01分
着实不太懂,我来了。。。狸窝
2016年09月22日 01点09分
level 7
问:如何在EXCEL表格中保护单元格中的公式、表格位置,又能正常输入数据?
答:
在大家使用excel时,经常为表格位置、数据或公式被他人改动而造成许多麻烦,那么,如何设置,才能使表格位置、数据或公式被他人改动。从而保护已有的数据或公式,又能在下次输入中正常使用呢?
该如何设置呢?首先,选定整张工作表,在菜单栏:格式----> 单元格---->保护项中,将锁定、保护前的钩去掉。再将需要保护、隐藏公式和数值的单元格选定(连续区域使用shift+拖曳,非连续区域使用ctrl+点击),再菜单栏:格式---->单元格---->保护项中,将锁定、保护前的钩加上。工作表中如不想显示“0值”,在菜单栏:工具---->选项---->视图中,将“零值”前的钩去掉。最后,在菜单栏:工具---->保护---->保护工作表项中,将对象、方案前的钩去掉(必须去掉),确定。经过这样设置,非保护区可以正常输入数据,又能保证保护区内数据不被改动。
2009年11月27日 01点11分
7
保护工作表圣诞框中对象 方案这些分别都是说什么的?
2013年07月31日 15点07分
保护工作表圣诞框中对象 方案这些分别都是说什么的?
2013年07月31日 15点07分
请问2007版的工具——选项——视图——中,将“零值”前的钩去掉,藏在哪个地方的啊,找不到呢
2015年09月25日 08点09分
level 7
问:怎样在Excel中导入Word中的数据,请问该怎么做?那位高手能给提示一下吗?
答:
首先把Word文件存盘成.txt 的文件,于是得到类似如下的文本:
去年 35 52.38 62.45 58.5 35.78
今年 55.5 74.25 102.58 38.69 20.00
例如把它存为文件名为:今年.txt
然后按下面的步聚操作:
1、打开Excel电子表格
2、点击excel\数据\自文本
3、选取文本文件“去年.txt”
3、弹出窗口后点两次“下一步”,最后点“完成”
2009年11月27日 22点11分
9
word文件存盘成.htm文件,右键单击,打开方式,excel,另存为excel文件
2014年10月17日 10点10分
level 7
问:
在小计一栏的C2内写上求和公式: =sum(c3:c20)
现在需要在第三行插入一行后,在C3单元格加入一个数字50(见表所示),然而插入一行后
公式变成:=sum(c4:c21),怎样在插入一行后,使公式不随之变化,或者说要变化也从C3开
始计算到C21,即:=sum(c3:c21)?
答:
将公式写成:=SUM(INDIRECT("R[1]C"&":"&"R[18]C",))
此公式表示从下面的第一行到第18行求和。
感谢karos的回答。
2009年11月29日 00点11分
10
level 1
你好!
本人在制作表中,遇到某一行中的单元格内的数值为零时,EXCEL表能自动把该行能隐性掉.不知哪位高手能解决此难题,本人万分感激!
2009年11月30日 08点11分
11
EXCEL选项——高级——在具有零值 的单元 格里选零 取消就行了
2017年06月16日 02点06分
level 7
回复:11楼
写一段VBA代码就可以了,用For ...Next语句。
2009年12月03日 13点12分
12
level 7
问:
怎样将2007版excel下方的sheet1/sheet2/sheet3的工作表弄出来,我的怎么没有啦?
答:
Office按钮-Excel选项-高级,在右边找到“此工作簿的显示选项”,勾上“显示工作表标签”。
2009年12月03日 13点12分
13
level 0
请问!
=INVOICE! 是什么意思啊?具体要怎么运用
2009年12月03日 13点12分
14
level 7
回复:14楼
显然没有这个函数,这是一个sheet 的文件名,后面那个感叹号能说明这个问题。
invoice英文意思是发票。
2009年12月04日 01点12分
15
level 0
请教一个问题,第一个工作表中有若干个人(分为5组)我查找到第一组,将其复制到第二个工作表;假如第二次这一组的人在第一个工作表的位置变了,怎么能实现只在第一个工作表改变数据(比如工资),就能在第二个工作表中自动改过来。
2009年12月04日 01点12分
16
level 0
在VBA中怎么调用SUMPRODUCT()函数
具体在EXCEL中的公式如下:=SUMPRODUCT(($B8:$B690<=$B$2)*1,($B8:$B690>=$A$2)*1,J8:J690)
我是这样写的RANG("B7")=Application.WorksheetFunction.SumProduct((Range("b8:b690") <= Range("b2")) * 1,(Range("b8:b690") >= Range("a2")) * 1, Range("j8:j690"))
为什么运行时总是说错误,类型不匹配?
谢谢!
2009年12月04日 10点12分
18
表示不是很懂。。。
2017年02月23日 11点02分
level 0
工作表1有姓名、考号、班级、语文成绩、数学成绩、英语成绩..等,按照考号由小到大排列。班级列没有规律,如何根据一班、二班 、三班...等学生的姓名提取各科成绩到另一工作表2。(不用筛选法)
2009年12月04日 11点12分
19
level 7
说明:
由于本人工作很忙,对一些问题只能作有选择性的回答,请鉴谅。
对隐身(指显示IP号段的)的提问,一般不作回答。
2009年12月05日 01点12分
21