2019-09
10

Excel内部套打

By xrspook @ 11:03:09 归类于:烂日记

我花了一个下午的时间,做了一件Excel内部套打,实际上这个功能很早以前我就已经可以用Word和Excel联合实现。出来的效果很完美,问题只是核心数据要贴在Excel,打开Word的时候,必须点一个对新手来说可能不知道该怎么办的窗口。如果那是一大堆的数据的话,这样的操作绝对值得,但如果那只是仅仅一两条数据,这样的操作貌似比较麻烦。所以昨天我就在Excel里面做了个模板,然后用定位的方式在文件内部实现套打。这样的好处是只需要打开一个文件,就能实现打印而且不会弹出一些让新手很困惑的窗口。很多函数都可以实现这个功能,但最终我选择的是一个定位函数,虽然那是一个动态函数。但因为我要实现的东西很简单,提取的东西不会超过10条结果,我需要进行筛选的总表里面也没有成千上万的东西需要纠结,所以我无需考虑运行效率这个问题。之所以选择INDIRECT这个函数,是因为参数比较少,而且在我定义函数的时候我可以轻松地借用到原数据的列标签,不需要思考一下我要怎么把那个转化为数字。

打印数据的控制可以通过手动输入,也可以通过我随手拉出来的一个控件。控件的好处是可以一个一个地向上增加或减少,这样漏掉的几率就会比较低。当然,如果要暴力一点的话,可以直接在单元格里面输入任何你想输入的东西。当然那样的话就得不到应该有的效果。在不用VBA的前提下,我觉得这样应该实现不了批量数据生成。如果我在现在这个东西的基础上再加一些VBA语句,应该可以实现批量打印,而且难度不算太大。这样的话我就可以用它完全取代Word和Excel黄金搭档的邮件合并功能。虽然我现在做出来的这个小表格很直白简单,用起来方便,但入门的门槛不低。纯粹只是套用,其实没什么难度,但要把整套东西设计出来,还是得花一定的时间。相对而言,相比之下,Word和Excel的邮件合并好用得多。之所以那么好用,是因为一些我需要在Excel里DIY控件实现的功能他们有内置的控件。之所以我想到要加一个控件控制单元格步长,就是受到他们的影响,当然我也可以设置直接跳转到第一条数据和最后一条数据。之所以想到这个也是因为我看到他们可以实现。要如何在Excel里实现批量打印,我想出来的方法不是在一个工作表里面生成一大堆表格,而是一个表格生成一个工作表。打印的时候,我可以筛选有特定字符的工作表批量打印。其实在Word里面也是这么控制的。我之所以想到要生成一大堆工作表是因为我不知道如何在一个工作表里面连续生成N个格式一样的表格,这些表格在打印的时候必须刚好1表1页。要控制好这个,Word里在表格的后面插一个分页符就好,但是Excel里面貌似没有这个东西。当然如果我把表格的高度刚好就是一页纸的话,就应该能达到我想要的效果,但这该如何做到呢?暂时我还没想通。

一个下午就只干一件事,貌似工作效率有点低,但起码我做成了这件事。接下来我将继续在这个问题上动动脑筋研究出我想要的效果。

2017-08
31

需要学习

By xrspook @ 9:35:50 归类于:烂日记

一下子摊开很多东西,但全部都不能完结,都撂在那里,这种状态实在让人很无语,尤其是遇到我这种单核操作的人,觉得这样我会折腾不过来。每天都只做一点点,其实没有问题,但是所有东西都处在一个未完结的状态,所以其中一些细节到很久很久以后可能就会忘掉了。这样就非常容易出乱子。我已经不记得十年前的装粮压仓到底是怎么回事了。在我印象之中,那次没有装一大半不装满好像没持续多长时间。因为当时根本就没有那么多仓允许我们在那里等。现在我也不知道那个仓快装满但又不满的状态要维持多长时间。我觉得现在这样的坏处是,到最后完结的时,可能数据调来调去很麻烦。因为一开始的时候同时进的那些仓和最终补进去的那些非常有可能不一致。这种麻烦是人为造成的,如果那不是一个新仓,那是一个旧仓就不存在这种装得差不多然后停在那里,又换另外一个仓装粮这种事。当然也不会遇到后续的麻烦。我觉得这样是在折腾我,但实际上,没有更好的解决办法。

高中的时候曾经学Access,但后来一直没有用过。那个算是Office2003的软件里我用得最少的一个,准确来说是碰都没有碰过,因为高中学的时候用的是Office2000。15年前的事,当然已经不记得该怎么折腾了,而且学校学到的东西通常都只是皮毛。那到底在实际操作中好不好用很难说。昨天就要用到Access做一些固定数据的查询。折腾了一番,我的同事终于整出来了,他也不熟悉那个软件,因为他平时开发的并不是那种数据库。其实Access除了查询以外,还可以把数据按照固定的格式打印出来,但是那个报表设置界面实在让我觉得无所适从。工具箱有一堆东西,但是貌似,都不是我想要的,我想要的东西到底在哪里?不知道.理论上应该有。所以为了免去马上学习的时间,我又开启了Word的邮件合并。邮件合并把数据传过去非常简单,但问题是后续的格式调整需要一定时间。比如表格的间距、页边距,还要设定引用数据的格式,但这些都不是问题,完成只是个时间问题。打开Word和打开Access,最终打印不过是界面不同而已。如果打印功能放在Access会让人觉得比较统一,但实际上,打印数据根本不需要开Access,直接打开Word选择需要的就可以了。Word的坏处是除了那一条数据以外,你不能看到数据的整体情况。当然也有其它方式把数据全部都展示出来,但又何必这么折腾呢?而Access不同,你可以进去查看详细数据,你也可以查看具体某一条数据。所以非常有可能今天我要学习一下该怎么在Access里设计固定格式的报表。学习是要花时间的,但是这个时间我必须得花。而且我对学习这个也挺期待的,毕竟这种事,不是用一天两天,可能往后每一天都会遇到。一开始的时候当然得选择一套简便的方案让别人可执行。数据抄来抄去容易出错,如果数据全部都是自动生成。就不存在人为出错的问题。自动生成一定程度,你可以说是因为我懒,但实际上如果这种懒可以让工作更顺畅,为什么不这么干呢?

马上就是月末了,明天就要把所有报表都报出去,所以今天我要做好最后的准备。

归档:2017-08-31 见面

2014-05
30

懒人自有天相

By xrspook @ 15:12:06 归类于:烂日记

大日子就预示着你要为之付出很多,这几乎都已经能成为了潜规则。比如说昨天是橡皮章开玩一周年,无论是图片还是文字我都要比平时多做多写很多很多,多到超乎我的能力范围,hold不住的水平,继而发生的是很多东西都超时了,为了完成昨天的橡皮章和blog我不得不晚睡觉+早起来。一切都是值得的,呵呵呵,其实这句话属于自我安慰。但如果在某些很重要的日子你都舍不得花时间的话,我真的不觉得你会愿意在平时花很多很多在那个橡皮章的习惯上。

我是个很懒很懒的人,但我是个理工科生,在我的脑子里逻辑比神马都重要。我一直打算把所有橡皮章都理出一个表格,记录齐全橡皮章的编号、制作日期、名称以及我写相关blog的网址。因为不是一开始就做,所以做这个挺耗时间的说,于是,我也就一直都没有做了。一直没有做,一直在拖,直到昨晚,我终于认真地把盖印过我全部橡皮章的小册子拿出来,一个个电子化文字录入,录入完毕并检查后已经晚上11点了好吗,然后今天早上我再在blog里把逐个橡皮章的文章链接全部挖出来。我不是要炫耀什么,我觉得这是我应该做的。好了,每个章子300*300px的图都有了,在PS里已经组成了方阵。Excel表格里我需要的文字信息也都齐全了,我需要的是让它们以我想要的方式输出——该超链接的地方乖乖地给我全部自动超链接!

囧。WordPress从前不是有富文本的编辑模式么?为啥现在没有了?!!!!同样的事件发生在BlogBus,点点,MarkdownPad,163邮箱,Gmail邮箱的撰写区。这摆明很容易实现的东西现在居然没一个可做到?从前我还没开始纯代码编写的时候我一直那么干的啊啊啊啊啊!我一共有94套橡皮章(10套送人的,84套自己有编号的),其中有3套送人的没有在blog的日志里提及贴图过。烦了,难道我要手动复制粘贴91个超链接?!!!!!我试图搜索一下网上现有的编辑器,但貌似很无能。难道我要为自己写一个php?写php不难,但这貌似是杀鸡用牛刀的事。我试图在Excel里引用串联起单元格的内容,无能。最后当我死心塌地在WordPress复制粘贴了3条超链接后我脑子里蹦出了Word+Excel的邮件合并!这货最适合就做这种事啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊!!!!!!邮件合并的使用我是各种得心应手了。邮件合并理所当然是我在Excel里有完整数据而我需要把数据换个模式规范输出的最佳解决办法。不出5分钟,我把我烦恼了起码15分钟,如果“很勤快”需要起码15分钟才能未必万无一失做到的事办妥了~ 我很懒,所以我宁愿在想方法上多费时间也不愿意把无谓的精力耗费在非常有可能出错的重复性条件反射劳动上。综上所述,貌似我应该去德国,他们的思维方式方式实在和我太相像了。

完成明天的18K以后,我5月份的跑量就将突破200K,前提是明天我健康完整地跑完了,且手机没问题,Nike+也没有歇菜,不过即便歇菜了,18K就是18K,我跑完了平时我跑的那个路程毋庸置疑就应该是18K,即便因为什么原因我的数据没有被智能仪器记录下来。200K,多么高大上的一个数字,那将是我开玩Nike+以来最华丽的数字,即便在一开始快走&快走+慢跑的时候我都从未做到过如此金光闪的成绩,而现在我单纯用跑步做到,而且是在初夏做到,在跟高温高湿周旋在跟下雨奋进中做到,哪怕这或许就是我的顶峰了,下个月我的跑量又会掉落回来,这又有什么所谓呢,做到过就是光荣的。

还有不到一小时我将踏上回家的征程。

2010-09
26

再遇邮件合并数字问题

By xrspook @ 17:59:46 归类于:烂日记

让人抓狂的网速持续着,不明白为什么大家都爱用流氓雷和暴风狂魔。很怀念从前干净快车的日子,没有闪来闪去的广告,也没有弹出小浏览窗口。到底那个窗口是谁的主意呢!QQ如此,旺旺如此,飞信如此,流氓雷,***也如此……只能叹一句,这社会再也没有干净和纯粹了。

今天继续折腾邮件合并,这次用在它最闪亮亮的地方——打印工资条。

又是那个该死的小数点问题,发现邮件合并的Word和Excel真是水火不容,即便在Excel里是整数,Word也会弄个14位小数麻烦你。到底为什么会这样呢?云里雾里。发觉之前记录的解决方法还不够仔细,所以,遇到邮件合并小数问题,应该这样弄:

1、鼠标移至插入域字符间,右键,下拉菜单选择“切换域代码”

2、MERGEFIELD “***”后加上“\#0.00”,“\#0.00”表示数字形式设定为2为小数,如果要保留整数,“\#0”就好。例:完整域代码从{MERGEFIELD “合计”}变成{MERGEFIELD “合计” \#0.00}

3、修改完毕后F9,更新域代码并退出域代码模式,返回数字。很多时候我们修改对了却没有更新,所以显示的仍是错误的N位小数

完成了!

很多时候,我们第一是忘记域代码该怎么写,第二没有按F9,抓破头仍得不到目标效果。

很多地方都说了遇到邮件合并数字问题该怎么解决,但却好像没多少人解释为什么会这样,如果只是小数出现,那还说得过去,因为Excel并非所见即所得,很多时候,你看到的那个数字经过四舍五入,但实际上Excel运算的仍是14位小数,所以,神奇效果可想而知,但连整数都会出现这等问题,那可真的让人很无语。难道Word理解那个单元格的内容并非数字而是把它当作日期、时间等其它信息?为了确保邮件合并后数字的正确显示,还是老老实实地把所有数字域都加入控制手柄,使之在可控范围才算万事大吉。

为什么没有Excel对Excel的邮件合并呢?

2010-04
21

继续学习邮件合并

By xrspook @ 18:02:37 归类于:烂日记

还是大三的时候有门食品工程原理实习的课,最终作业是做个管壳式冷凝器的可行性报告,当时花了好大力气用VB做了个简单的计算工具,但最终从分数上看,老师大概不知道,因为我居然忘记把代码打印出来附在报告的后面(虽然电子文件里有程序),悲情啊~~~但,分数是一回事,从中学到的很多却让人很是兴奋。那次开始,我迷上了Excel,伟大的计算功能原来也通用于简单而强大的VB,从那时起,我就有个念头,没有做不到的,只有想不到的。如果你说X某功能无法实现,大概是为你技术没到家,不会运用某功能。

Excel是伟大的,同样伟大的还有Word,从接触Windows,需要递交打印版作业开始,Word就是你密不可分的伙伴。如果说你不喜欢跟它在一起,悲情了,那么很多事都会让你都郁闷透顶,W会把你卡死,你会被它气死。

今天又做了个邮件合并,如果说以前玩的邮件合并纯粹是调整电子版效果和打印效果的话,这次的邮件合并则是为了实现多数据多格式的完美结合。其中用到了一个很重要的数值格式控制{MERGEFIELD “***” \#0.00}用过邮件合并的你就会知道,有这么一种经常发生的诡异情况。数据源明明设定好了格式,合并到W有时小数自己会从几位变成14位,把你郁闷得云里雾里。用邮件合并做工资条的童鞋肯定深有体会,于是必须手动控制数值格式。

学会一样东西会让人觉得异常兴奋。不得不说,如果你不是有所求地学的话,东西会左眼进右眼出。人不可能天生就万能,是后天的学习使之无所不能。千万不要以为自己知道了很多,在沾沾自喜的时候非常有可能你身后的笨鸟就超过你了。

学无止境,别以为自己已经知道W和X还有其它软件的很多很多了,它们都是博大精深的!

Page 1 of 212»
COPYRIGHT @ 我的天 | Theme by xrspook | Power by WordPress | Valid XHTML 1.1 and CSS 3 Go to top