若干年来在CSDN回答问题的汇总(主要是excel,也有word)

说明:因为是几年来在CSDN回答问题的收集整理,所以还是归结为“转载”。

CSDN回答问题的汇总

一、excel数据查找(这里

问题:

如何在表2中实现查找表1数据,并显示在表2

如:在表2 a1中输入111.查找表1a列有没有111模糊匹配,

在表2b1c1依次显示,表1中匹配的行

回答:

用函数可以实现,只是复杂了点。


 二、怎样寻找与本月最接近月份的有关数据(这里

问题:

sheet2表上,设A列为月份、C列为支出数。现在在sheet1表的某单元格要登记sheet2表的8月份的支出数,要求sheet2表上有8月份的数据即登记8月份的支出数。如果没有8月份的,即登7月份的,也没7月份的即登6月份的,一直到有最接近的那一个月的支出数,直到1月份,如果全年都没有则为空格。请求指教怎样列出公式?谢谢!

回答:

三、关于excel中统计不重复的数据个数(这里

问题:

数据源: 

 A           B

河北       站点1

河北       站点2

河北       站点1

北京       站点3

北京       站点4

北京       站点4

北京       站点5


实现结果:

 分公司站点数量

河北    2

北京    3

如何用函数公式自动实现23这个结果,谢谢,研究了好几天了,都没有解决

回答:

四、excel中,有一列中是多个名字以逗号分隔,想统计某个名字出现次数(这里

问题:

然后在下面一个表格里统计每个名字出现次数,能做到吗?


回答:

五、一个EXCEL查询的问题,经常用到(这里

问题:

有张本班学员名单,还有张全校学生的考试成绩表,想自动用EXCEL查询出本班所有学生的所有科目的成绩,怎么实现?

说明:

1、以学号为依据查询,学号唯一

2、考试表中一个学号可能会有好几条考试记录

回答:

写一个公式为例:

=IF(ROW()-ROW(AE$1)<=COUNTIF($G$2:$G$49,AE$1),INDIRECT("H"&SMALL(IF($G$2:$G$49=AE$1,ROW($G$2:$G$49),49),ROW()-1)),"")


依次作点说明,以便于你照猫画虎。

其中:AE$1是你要找的学号所在的单元格

     $G$2:$G$49是成绩表中学号所在的列

     "H"是你要找出的成绩所在的列,比如你想知道总分,用总分所在的列比如K替换H

     49,来源于$G$2:$G$49,你学号所在列的最下端一个单元格的行号

     1,来源于AE$1,它的行号是什么,你就写什么。


 把公式写入AE$2后,按crtl+shift+enter,把它变成一个数组公式。

 再选中AE$2这个单元格,向下拖,复制它,最多有几条记录就拖几行,比如可能最多有5条记录,就往下复制4行。 


 这个办法可以解决你说的多记录问题,有几个总分就能找出几个来。

 如果你想同时找出除总分以外的科目,得修改那个"H"


 这样一来,输入一个考号,就能出来他的全部成绩。

 不过,你提的“自动用EXCEL查询出本班所有学生的所有科目的成绩”,这个所有学生的成绩你打算形成一个什么样的表不知道,所以没办法实现。但,一次查出一个学生的所有成绩绝对没问题。

六、如何计算工资(这里

问题:

姓名岗级工资新工资

aa1 A 2200

aa2 B 3750

aa3 A 2200

aa4 D 7425

aa5 C 2250

aa6 B 1500

aa7 A 1000

aa8 B 1500

aa9 D 6075

aa10 A 2200

aa11 A 1500

aa12 D 8437.5

aa13 D 3375

aa14 E 9112.5

aa15 B 3750

aa16 B 2700

aa17 D 8437.5


原工资级别表

一级二级三级四级五级六级

A 1000 1500 1800 2200 2500 3000

B 1500 2250 2700 3300 3750 4500

C 2250 3375 4050 4950 5625 6750

D 3375 5062.5 6075 7425 8437.5 10125

E 5062.5 7593.75 9112.5 11137.5 12656.25 15187.5 


新工资级别

九级八级七级六级五级四级三级二级一级

A 5400 4800 4200 3600 3000 2640 2160 1800 1200

B 9720 8640 7560 6480 5400 4752 3888 3240 2160

C 17496 15552 13608 11664 9720 8554 6998 5832 3888

D 31493 27994 24494 20995 17496 15396 12597 10498 6998

E 56687 50388 44090 37791 31493 27714 22675 18896 12597 


题目要求:

目前进行工资调整,根据目前所在的岗位定新的目标工资,要求目标工资必须在工资范围内,原岗级为6级,新岗级为9级,原则是在新的岗级范围内就近就高原则,即在指定级别范围内找到最接近的,并大于等于目前的工资。

回答:

新工资九级八级七级六级五级四级三级二级一级

A 5400 4800 4200 3600 3000 2640 2160 1800 1200

B 9720 8640 7560 6480 5400 4752 3888 3240 2160

C 17496 15552 13608 11664 9720 8554 6998 5832 3888

D 31493 27994 24494 20995 17496 15396 12597 10498 6998

E 56687 50388 44090 37791 31493 27714 22675 18896 12597 


原工资一级二级三级四级五级六级

A 1000 1500 1800 2200 2500 3000

B 1500 2250 2700 3300 3750 4500

C 2250 3375 4050 4950 5625 6750

D 3375 5062.5 6075 7425 8437.5 10125

E 5062.5 7593.75 9112.5 11137.5 12656.25 15187.5 


姓名岗级工资新工资

aa1 A 2200 2640

aa2 B 3750 3888

aa3 A 2200 2640

aa4 D 7425 10498

aa5 C 2250 3888

aa6 B 1500 2160

aa7 A 1000 1200

aa8 B 1500 2160

aa9 D 6075 6998

aa10 A 2200 2640

aa11 A 1500 1800

aa12 D 8437.5 10498

aa13 D 3375 6998

aa14 E 9112.5 12597

aa15 B 3750 3888

aa16 B 2700 3240

aa17 D 8437.5 10498  


公式:=INDEX($B$2:$J$6,MATCH(B16,$A$2:$A$6),MATCH(C16,INDEX($B$2:$J$6,MATCH(B16,$A$2:$A$6),),-1))

把上面的内容复制到excel中,求aa1的新公资那一行是第16行,上面附的公式就是写在这一行第4列中,得出的结果是2640 


剩下的该怎么做,你懂的。


解说一下:

第一步根据B16找出对应的级别在2-6行中的位置,它决定了我们等会去找的行,这里值为1

公式为: MATCH(B16,$A$2:$A$6) 


第二步index函数把2-6行中第1行的数据返回,缩小查找范围为第2A级的九个工资。

MATCH(B16,$A$2:$A$6)

公式为: INDEX($B$2:$J$6,MATCH(B16,$A$2:$A$6)) 


第三步再用match函数在第二步结果中找与原工资相近而高的值所在的位置,结果是6

公式后面的参数-1,决定了是找大于查找值的最接近值

公式为: MATCH(C16,INDEX($B$2:$J$6,MATCH(B16,$A$2:$A$6),),-1)) 


第四步有了一个区域B2:J6内的行号1(第一步的结果)

有了一个区域B2:J6内的列标6(第三步的结果)

再用index函数得出那个位置的值就行了。

公式为:INDEX($B$2:$J$6,MATCH(B16,$A$2:$A$6),MATCH(C16,INDEX($B$2:$J$6,MATCH(B16,$A$2:$A$6),),-1))


这里有一幅图,直观点

七、EXCEL用函数实现列表查询(这里

问题:

遇到一个比较棘手的问题

如果现在有一个10X10的列表,X轴和Y轴分别有对应的参数来表示。

如何通过函数来实现,我在A1B1,分别输入一个数据,在C1会自动根据A1B1的数据在一个10X10的数据区域里找出对应的那个值返回回来?


图不知道怎么贴。。。。

其实就这么来说好了

A1输入800

B1输入10

C1输出结果

数据

I1L4

I1为空J1800K11000L11200

I25 J21300 K21500 L22000

I310 J31400 K31600 L32100

I415 J41500 K41700 L42200

那按照我们的目的C1应该输出的就是1400

回答:

C1中输入公式:

=INDEX(I1:L4,MATCH(B1,I1:I4,0),MATCH(A1,I1:L1,0))

结果是你要的1400

八、excel如何对多列进行排序(这里

问题:

比如有下面这么些数据,希望得到第一列从小到大,对每一个第一列的值,第二列从小到大,类似的,对每一个第二列的值,第三列从小到大,……。谢谢

0.1 10 4 10 8191

0.1 10 8 10 8191

0.1 20 4 1 8191

0.1 20 4 10 8191

0.1 20 4 49 8191

0.3 1 16 15 2048

0.3 1 16 15 8191

0.3 1 16 5 2048

0.3 1 16 5 8191

0.3 1 28 5 2048

0.3 1 28 5 8191

回答:

选中你要排序的各列,点“数据”-“排序”,打开“排序”对话框。

在“主要关键字”中选第1列,因为要从小到大,默认“升序”不用改动。

“次要关键字”和“第三关键字”依次定为第2列和第3列,其余不用设置。

点击“确定”,就能有你要求的效果了。

九、word替换问题(这里

问题:

一篇文档类似

adnf,(wer,3er,w33,3,3)sdaui33,3,3(wej33,3,3,)vf33 


如何才能把所有括号内的 ,3替换为 00呢。。。不替换括号外的。。。 

或者如何能把括号内的内容另存在一个别的文件里,然后再替换

有没有会vba的高手啊。。。求助。。。

回答:

1、打开“替换”对话框,点击左下角“更多”,在加长的部分找“使用通配符”,勾选它。

2、在“查找内容”中输入:(\(?*),3(?*\))

  (说明,不要复制冒号,下同)

  在“替换”中输入:\100\2

3、点“全部替换”,即可解决括号内的第一个,3

4、重复步骤3,直到找不到。


 



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值