友情提示:如果本网页打开太慢或显示不完整,请尝试鼠标右键“刷新”本网页!
Excel word ppt office使用技巧大全(DOC格式)-第66部分
快捷操作: 按键盘上方向键 ← 或 → 可快速上下翻页 按键盘上的 Enter 键可回到本书目录页 按键盘上方向键 ↑ 可回到本页顶部! 如果本书没有阅读完,想下次继续接着阅读,可使用上方 "收藏到我的浏览器" 功能 和 "加入书签" 功能!
d_date 日期中月数的差。忽略日期中的日和年。〃YD〃 start_date 与 end_date 日期中天数的
差。忽略日期中的年。
批注:Microsoft Excel 按顺序的序列数存盘日期,这样就可以对其进行计算。如果活页簿使
用 1900 日期系统,则 Excel 会将 1900 年 1 月 1 日储存为序列数 1。而如果活页簿使用 1904 日
期系统,则 Excel 会将 1904 年 1 月 1 日储存为序列数 0,(而将 1904 年 1 月 2 日储存为序列
数 1)。例如,在 1900 日期系统中 Excel 将 1998 年 1 月 1 日储存为序列数 35796,因为该日
期距离 1900 年 1 月 1 日为 35795 天。学习关于 Microsoft Excel 如何储存日期和时间的信息。
Excel for Windows 和 Excel for Macintosh 使用不同的预设日期系统。有关详细资料,请参阅 N
OW。
范例:DATEDIF(〃2001/1/1〃;〃2003/1/1〃;〃Y〃) 等于 2,即周期中有两个整年。
DATEDIF(〃2001/6/1〃;〃2002/8/15〃;〃D〃) 等于 440,即在 2001 年 6 月 1 日和 2002 年 8 月 15 日
之间有 440 天。
DATEDIF(〃2001/6/1〃;〃2002/8/15〃;〃YD〃) 等于 75,即在 6 月 1 日与 8 月 15 日之间有 75 天,
忽略日期中的年。
DATEDIF(〃2001/6/1〃;〃2002/8/15〃;〃MD〃) 等于 14,即开始日期 1 和结束日期 15 之间的差,忽
略日期中的年和月。
问题2:2011 年 8 月 23 日减去15 个月是什么日期
解答:=date(2011;8;23)…date(0;15;0)
问题3 :如何取日期的前两位
用日期函数 today()显示 25…03…03 即 03 年 3 月 25 日,我想用left(today();2)取 25 日这个数字,
可是 left 只能用于字符串,不知该如何解决这个问题?
解答:①=day(now())
② =day(today())
③=TEXT(A1;〃dd〃)
④=LEFTB((TEXT(A1;〃dd…yyyy…mm〃));2)
一个用数组公式计算人数的问题
年级成绩统计时,要计算 N 列值不小于 360 的 1 班人数,我用数组公式来求,即
{=sum((A4:A723=BH4)*(N4:N723》=360))},现在的问题是,我想计算值在 359 -320
之间的 1 班人数,应该怎么写公式?
解答:{=sum((A4:A723=BH4)*((N4:N723》=320)…(N4:N723》=359)))}
如何将一个单元格复制确定个数
我在复制单元格时,先选中,再到该格右下角等小加号出现,往下拉,因为我要复制 100 多个,
经常拉不好,一下就跑到好几百个了,往回拉又过了。感觉不方便,请问有没有好办法,想复
制多少就多少个。
解答:①选中要复制的源单元格,在按住 Shift 键的同时移动到想要粘贴的目标单元格,选中
它。这时就选中了源单元格到目标单元格的竖列。然后单击“编辑”→“填充”→“向下填充”。
②选中复制单元格………复制………将光标移动到下一个单元格……………将滚动条移动到你想要复制的位
置…………按下 shift 键……左键单击选中想要复制的单元格…………粘贴
387
…………………………………………………………Page 388……………………………………………………………
③还可以用右键填充,到达终止单元时从弹出的菜单中选择你所需要的方式。
另外无论用哪一键拖曳,不要用劲往下拽,拉到文档窗口与状态栏的边缘,当 EXCEL 在自动
显示下方行数时,就可停住(不要松开鼠标),只须观察填充柄旁的提示,满足你的要求时,
即可松开鼠标。
一个小发现
分享一下,一个小发现,或许大家可能已经知道,但于我而言,今天无意发现。
在 EXCEL 中,填充句柄对单元格的复制,相当方便,除了可以用CTRL 和右键拖动外,在按
下 SHIFT 的同时,使填充句柄的黑色小方块变成键头状(呈调整行高状),此时,将会复制条
件格式和数据有效性,而原有数据将不会被复制;另外,当 A1 与 A2 都有数据时,按上述方
法拖动填充句柄,可以在 A1 与 A2 (数值)间插入,但行号不变(即不影响其它列)。
如何汉化英文加载宏
对于在编码中有的菜单或对话框,可以破解后直接汉化(引号内的内容)
对于有些在编码中没有菜单的词存在,可以将 ThisWorkBook 属性中的 IsAddin 设成 False ,您
就会发现〃菜单中的词〃是放在工作表中了
汇总多张表中数据
如何将多张表中数据汇总,每张表名为日期格式,如“20030901 ”,且日期不一定连续,每张
表的数据格式相同,而且表会不断的增加,如何设定公式在增加表后自动汇总所有工作表中相
同位置单元格的数据?
解答:1、将汇总表移至最后,定义名称
csht_name=MID(GET。DOCUMENT(1);FIND(〃'〃;GET。DOCUMENT(1))+1;100)&T(NOW())
sht_name=MID(GET。WORKBOOK(1);FIND(〃'〃;GET。WORKBOOK(1))+1;100)&T(NOW())
total=SUM(N(INDIRECT(IF(sht_name=csht_name;INDEX(sht_name;1);sht_name)&〃!〃&ADDRE
SS(ROW();COLUMN()))))…N(INDIRECT(INDEX(sht_name;1)&〃!〃&ADDRESS(ROW();COLUM
N())))
在公式单元格中输入:=tatal
2 、
total=SUM(N(INDIRECT(INDEX(sht_name;ROW(INDIRECT(〃1:〃&GET。WORKBOOK(4)…1)))&
〃!〃&ADDRESS(ROW();COLUMN()))))。GET。WORKBOOK(4)为工作薄中的总表数。
(N 是什么意思?如果要计算平均值,可否将sum 换成 AVERAGE )
N 函数是将 INDIRECT 函数生成的数组转为二维数组(不知 excel 中为什么要这样?),否则
只能计算数组中的第一个值或返回错误。
不能直接用 AVERAGE 函数,因为中间的个数不同,可用以下的公式定义名称
avg=(SUM(N(INDIRECT(IF(sht_name=csht_name;INDEX(sht_name;1);sht_name)&〃!〃&ADDRE
SS(ROW();COLUMN()))))…N(INDIRECT(INDEX(sht_name;1)&〃!〃&ADDRESS(ROW();COLUM
N()))))/(COLUMNS(sht_name)…1)输入=avg 即为平均值。
去掉工作表中的公式
工作表中含有大量公式,在数据处理完后,想去掉这些公式,仅保留数值另存,相于: 选
中全表—复制— (在原位置)选择性粘贴—数值。请问用 VBA 语句如何编写?
388
…………………………………………………………Page 389……………………………………………………………
解答:請參考
With Cells
。Copy
。PasteSpecial Paste:=xlPastevalues
。Cells(1; 1)。Select
Application。CutCopyMode = False
End With
2、For Each x in 所有公式单元格
If Not x。Formula = 〃〃 Then
数值 = x。value
x。Formula = 〃〃
x。value = 数值
End If
Next
工作薄打开后个一分钟自动保存关闭,怎么写代码
1、 在 thiswork 中写入代码:
Private Sub Workbook_Open()
Me。RefreshAll
Application。OnTime Now + Timevalue (〃00:01:00〃); 〃Close_Me〃
End Sub
添加模块并写入代码:
Sub Close_Me()
ThisWorkbook。Save
ThisWorkbook。Close
End Sub
389
…………………………………………………………Page 390……………………………………………………………
我想把一个 sheet 拷贝后选择性粘贴为一个新的 sheet;怎么做
答:添加模块:
Sub test()
ThisWorkbook。Save
Sheet1。Move
With ActiveWorkbook。ActiveSheet。Cells
。Copy
。PasteSpecial Paste:=xlPasteValues
。Cells(1; 1)。Select
Application。CutCopyMode = False
End With
ThisWorkbook。Saved = True
ThisWorkbook。Close
End Sub
如何利用列标自动求和
当光标指在F1 时;能否利用 COLUMN()求 A1…E1 和,当光标指在 G1 时;能否利用 COLUMN()
求 A1…F1 和;而不用改变公式,比如:SUM(A1:?);就是说写个式子代替?;利用 COLUMN() 自动算
出最后列
1、=SUM(A1:INDIRECT(ADDRESS(ROW();COLUMN()…1;4)))
应该为:=SUM(INDIRECT(〃R1C1:R1C〃&COLUMN()…1;0))
2 、 用 VB
新建一个工作表,在 sheet1 的代码窗口中录入如下代码:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim iRow; iCol; iCol_rn As Integer
Dim Str1 As String
iRow = Target。Row
iCol = Target。Column
Range(〃M1〃)。ClearContents
iCol_rn = 'A1'。End(xlToRight)。Column
Str1 = Range(Cells(1; iCol_rn)。Address)。Address
If Target。Rows。Count 》= 2 Then GoTo Err
If iRow = 1 And iCol 》= 2 And iCol 2 And Row 《 21 Then
a = Target。Value
Target。Value = a * 10。22 * 20
End If
End Sub
解答:Private Sub Worksheet_Change(ByVal Target As Range)
Application。EnableEvents = False
If Target。Column = 6 And Target。Row 》 2 And Row 《 21 Then
a = Target。Value
Target。Value = a * 10。22 * 20
End If
Application。EnableEvents = True
End Sub
自动输入 ‘要点’两个字
工作表中有 500 行数据、F3 中包含红色的字符、F7 中包含红色的字符、。。。。。
想要达成的目的:如果 F 列的单元格中包含红色的字符,则在其同一行的 G 列中自动输入〃要
点〃两个字。请高手赐教!!
解答:有一個取巧的方法;請參考
On Error Resume Next
For i = 1 To 500
Color_Index = Cells(i; 〃F〃)。Font。ColorIndex
If IsNull(Color_Index) Then
Cells(i; 〃G〃) = 〃要點〃
End If
Next i
表格更新
是这样的,比如我已经有了一个原始表格 A,这时有人通知我A 表有错误,须加以修改,并给
391
…………………………………………………………Page 392……………………………………………………………
我一个表 B,表B 列出了须修改的参数(注意 B 的列数少于A 的列数,因A 的其它列无需修改)。
现在问题是如何根据表 B 中的新值,在表A 中找到相应位置,并加以修改。比如表B 中列出了
10002 的JOHN 的身高和体重等值需要修改,如何在A 中找到 10002 的相应位置(身高体重),
并加以修改。
解答:建议将表 B 复制至表 A 的 SHEET2,然后执行下列的宏即可
Sub change()
Dim dd As Range
Sheets(2)。Select
lastcell = Range(〃a65536〃)。End(xlUp)。Row
For Each dd In Range(Cells(2; 1); Cells(lastcell; 1))
If dd = 〃〃 Then Exit
快捷操作: 按键盘上方向键 ← 或 → 可快速上下翻页 按键盘上的 Enter 键可回到本书目录页 按键盘上方向键 ↑ 可回到本页顶部!
温馨提示: 温看小说的同时发表评论,说出自己的看法和其它小伙伴们分享也不错哦!发表书评还可以获得积分和经验奖励,认真写原创书评 被采纳为精评可以获得大量金币、积分和经验奖励哦!