精华内容
下载资源
问答
  • ” 其实word/ppt中的VBA与Excel中大同小异,只是类似“workbook” 、 “worksheet” 和 “Range” 等对象不同,另外没有工作表公式等Excel独有的功能。不过编程思路是一样的,可以说学懂了Excel VBA之后,一边看着...

    一般来说,大部分同学都是从Execl开始学习VBA的,所以经常有同学询问:“杨老师,请问ppt中也能使用vba么?该怎样学习?”

    其实word/ppt中的VBA与Excel中大同小异,只是类似“workbook” 、 “worksheet” 和 “Range” 等对象不同,另外没有工作表公式等Excel独有的功能。不过编程思路是一样的,可以说学懂了Excel VBA之后,一边看着手册一边就能写出其他软件中的VBA。

    说到这里,我倒是想起了几年前遇到的一件小事,正好可以给这个答案做一个形象的演示,让大家看一下PPT中的VBA与Excel有什么异同。当时正逢上海世博会,于是一大批来自欧洲的留学生申请交换到我们这里上半年课。学校分配给杨老师的任务是主讲《E-Commerce in China》这门课程(课名翻译:欢迎你们长大有钱后来中国花花花),于是我与其他几位老师合写了一套PowerPoint课件。

    7716399d97ae23e241317ea02118e5fd.png

    不过不同国家的学生学习习惯大有不同。给国内同学上课时,我从来都是课前只布置参考资料阅读任务,课件要等到讲完一节后再与随堂练习题一并发给大家。而国外的同学都是要在第一堂课之前,就把所有各节课程的PPT全都下载,再自己安排预习。所以上完第一节课之后,同学们一致要求我马上把全部课件发给大家,我也只好照顾大家的习惯。

    那么问题来了,因为PPT是多人合作,所以每个人都在各自负责的页面下做了很多备注,以避免别人讲课时发生误解。现在如果要把PPT发给学生,当然还是先把这些备注全部删除比较好。

    e13d4d4c6e439bc9bef0a4500dc21b22.png

    虽然PPT提供了这样的功能,不过我们的课件有几十个PPT(每个PPT几十页),杨老师实在不愿意把每个文件都打开操作一遍,更何况稍有疏忽就会遗漏某个PPT。于是很自然地,VBA又出场了。下面就是从一个PPT中删除所有幻灯片备注的代码(因为只是给大家演示一下异同,所以我把原来的代码简化了很多,并删除了一些防止出错的代码):

    178c8b93513ed77be5bb700ce4da9cd9.png

    首先大家可以看到,PPT的VBE与Excel VBE完全相同,都是我们最熟悉的三栏式编程界面,标准代码也写在“模块”之中,宏的格式也是“Sub - End Sub”,遍历每一个页面同样也使用 For Each in 循环(就像Excel遍历每一个工作表一样)。可以说,除了对象名称不一样,其他什么都相同!我给大家做一个映射大家就能想通:

    Workbook (工作簿文件) <=====> Presentation (幻灯片文件)

    Worksheet (工作表) <=====> Slide (一页幻灯片)

    ActiveWorkbook (活动工作簿) <=> ActivePresentation (活动幻灯片)

    Worksheets (工作表集合) <====> Slides (幻灯片集合)

    这个映射关系非常简单也非常清晰,相信大家一定能够理解。至于NotesPage等等,就像Excel中Worksheet的Range属性一样,只要查一查手册就能想通。而Delete方法,自然就是让某个对象自己执行删除方法(自行了断)了。

    说到这里,大家再回头看一下我前面给那位同学做的解答,应该就能理解为什么我说“会了Excel VBA,自然就会了其他VBA”了吧。

    最后再感慨一下各国学生习惯不同这个问题,那一个学期大家相处的都很愉快,期末时每个外国同学都做了一个不错的研究报告(记得有几个法国同学研究婚恋网站,我给她们翻译了一下午“百合网”、“世纪佳缘”,她们看到筛选条件里面居然有“收入”、“户口”,眼睛都要掉出来了)。没想到最后评分时,我不自主的按80分就算良好的习惯给了分数,结果招来了一片痛哭流涕的申诉,所有人都说自己从小就几乎没得过这么低的成绩,玻璃心碎了满地,弄得我也只好向学校请示是否需要按对方学校标准去改成绩。

    展开全文
  • VBA——word中书签VS的完美搭配

    万次阅读 热门讨论 2016-05-18 08:47:58
    VBA(Visual Basic for Applications)是Visual Basic的一种宏语言,是微软开发出来在其桌面应用程序中执行通用的自动化(OLE)(Object Linking and Embedding)任务的编程语言。他是一种自动化...

    强烈推荐一个大神的人工智能的教程:http://www.captainbed.net/zhanghan

    【VBA简介】

             VBA(Visual  Basic for Applications)是Visual Basic的一种宏语言,是微软开发出来在其桌面应用程序中执行通用的自动化(OLE)(Object Linking and Embedding)任务的编程语言。他是一种自动化语言可以使常用的程序自动化。在敲机房收费系统的时候我们就接触过了导出到Excel,在VS引用的时候还看到了PPT,想想微软真是厉害,这次的实战主要是word中的书签和VS的结合,使界面更美了。

    【需求】

            下图是最终需要做出来的效果。在验收完之后回来的路上,我们猜测既然VS可以和Excel结合,那么应该也可以和Word结合,经过百度证实确实是可以。而且这种技术叫做VBA,自己也借助这次机会初步了解了一下什么是VBA。

                       

    【过程】

           百度的过程中无意间看到VB应用word的书签。正所谓知识都是相通的嘛,既然VB可以,那么VS有什么理由不可以呢?经过一番尝试,在一个Word中通过VS写入想要的数据成功了。考虑到实际情况就在debug目录下放了一个模板,在打印的时候程序先将模板拷贝到用户选择的地方,然后我们在该路径下的word中写入想要的数据。

    【代码】

        

      Dim wordApp As New Word.Application   '定义一个word
            Dim wordDoc As New Word.Document
            Dim opara1 As Word.Paragraph       '写入word变量
            Dim opara2 As Word.Paragraph
            Dim opara3 As Word.Paragraph
            Dim opara4 As Word.Paragraph
            Dim TargetFileName As String     '目标文件名
            Dim spath As String
            Dim ssource As String         '获取debug的路径,从而可以将该路径下的模板拷贝到桌面
            Dim se As DialogResult
            Dim strPattern As String = String.Empty
            se = Me.FolderBrowserDialog1.ShowDialog()
    
            If se = DialogResult.OK Then
                '获取选中的路径
                TargetFileName = FolderBrowserDialog1.SelectedPath & "/信息打印.doc"
                If Microsoft.VisualBasic.Right(Application.StartupPath, 1) <> "/" Then
                    spath = Application.StartupPath & "/"
                    ssource = spath & "信息打印.doc"
    
                    If Dir$(TargetFileName) <> "" Then
                        If MsgBox("文件已存在,确认替换它!", vbYesNo + vbQuestion) = vbNo Then Exit Sub
                        '判断文件是否已经打开
                        If isopen(TargetFileName) = True Then
                            MsgBox("路径为:" + TargetFileName + "的文件已打开,请先将其关闭", vbInformation, "提示")
                            Exit Sub
                        Else
                            Kill(TargetFileName)     '删除文件
                        End If
    
                        FileCopy(ssource, TargetFileName)    '复制文件
                        wordDoc = wordApp.Documents.Open(TargetFileName)
                        ' 横向
                        wordDoc.PageSetup.Orientation = Word.WdOrientation.wdOrientLandscape
                        wordApp.Visible = True
                        wordApp.ShowMe()
                        '其中的company是word中的一个书签,之下的unitID等等类似
                        opara1 = wordDoc.Content.Paragraphs.Add(wordDoc.Bookmarks.Item("company").Range)
                        opara1.Range.Text = txtCompanyName.Text.Trim()
                        opara2 = wordDoc.Content.Paragraphs.Add(wordDoc.Bookmarks.Item("unitID").Range)
                        opara2.Range.Text = _userId
                        opara3 = wordDoc.Content.Paragraphs.Add(wordDoc.Bookmarks.Item("userName").Range)
                        opara3.Range.Text = txtPersonalName.Text.Trim()
                        opara4 = wordDoc.Content.Paragraphs.Add(wordDoc.Bookmarks.Item("phone").Range)
                        opara4.Range.Text = txtPhoneNumber.Text.Trim()
    
                        'wordDoc.Close() '关闭文档实例
                        'wordApp.Quit()
                        wordDoc = Nothing
                        wordApp = Nothing
                        'MsgBox("信息表已保存在您选择的路径下!!", vbInformation, "提示")
                        Me.WindowState = System.Windows.Forms.FormWindowState.Minimized
                    Else
                        FileCopy(ssource, TargetFileName)    '复制文件
                        wordDoc = wordApp.Documents.Open(TargetFileName)
                        ' 横向
                        wordDoc.PageSetup.Orientation = Word.WdOrientation.wdOrientLandscape
                        wordApp.Visible = True
                        wordApp.ShowMe()
                        '信息写入wrod
                        opara1 = wordDoc.Content.Paragraphs.Add(wordDoc.Bookmarks.Item("company").Range)
                        opara1.Range.Text = txtCompanyName.Text.Trim()
                        opara2 = wordDoc.Content.Paragraphs.Add(wordDoc.Bookmarks.Item("unitID").Range)
                        opara2.Range.Text = _userId
                        opara3 = wordDoc.Content.Paragraphs.Add(wordDoc.Bookmarks.Item("userName").Range)
                        opara3.Range.Text = txtPersonalName.Text.Trim()
                        opara4 = wordDoc.Content.Paragraphs.Add(wordDoc.Bookmarks.Item("phone").Range)
                        opara4.Range.Text = txtPhoneNumber.Text.Trim()
                        'wordDoc.SaveAs2(TargetFileName)
                        'wordDoc.Close() '关闭文档实例
                        'wordApp.Quit()
                        wordDoc = Nothing
                        wordApp = Nothing
                        Me.WindowState = System.Windows.Forms.FormWindowState.Minimized
                        ' MsgBox("信息表已保存在您选择的路径下!", vbInformation, "提示")
                    End If
                End If
            End If

     

       其中我们要求是默认横向打印,万万没想到一行代码就让word信服了。

     

     ' 横向
                        wordDoc.PageSetup.Orientation = Word.WdOrientation.wdOrientLandscape

        期间做测试,由于好奇心就将拷贝到指定路径下的word打开了,边打开着边用VS执行,这样就出错了,因为word已经打开,就相当于一个程序正在调用该进程,用户也是相当的多,猜想应该不会只有我一个人这样做吧。经过测试,证明是文件被打开的原因,那么如何判断该文件已被打开呢?如果已打开,就给出提示。

     

     

     Private Function isopen(ByVal path_string As String) As Boolean
            Try
                Dim fs As New IO.FileStream(path_string, IO.FileMode.OpenOrCreate, IO.FileAccess.Read)
                fs.Dispose()
                Return False
            Catch ex As Exception
                Return True
            End Try
        End Function

        在需要判断的地方调用即可:

     '判断文件是否已经打开
                        If isopen(TargetFileName) = True Then
                            MsgBox("路径为:" + TargetFileName + "的文件已打开,请先将其关闭", vbInformation, "提示")
                            Exit Sub
                        End if

     

    【创建书签】

    1.打开word

    2.在相应想要从程序中输出值的地方插入书签。

    3.第一步

    4.第二步

                                                       

    5.第三步

                

    【总结】

              VBA的思想就是让简单的东西更加简单了,通过代码将桌面应用程序和我们自己做的程序很好的结合起来,通过单击一个按钮就可以完成在桌面应用程序中的一系列操作。借助已有的东西来让自己的程序更加的方便美观——站在巨人的肩膀上,让自己看的更远。

    展开全文
  • 守柔(SHOUROU)WORD 编程代码集 书中可能涉及的对象,主要有:节(Sections)的循环,段落中(Paragraphs)的循环, 句子(Sentences)的循环,词组中(Words)的循环,字(Characters)的循环,表格(Tables) 的循环,单元格...
  • 大家好,我们今日讲解“VBA信息获取处理”教程中第十五个专题“将Excel数据信息传递给WORD应用”的第一节“在EXCEL界面实现WORD文档的打开和校验”,这个专题是非常实用的知识点,希望大家能掌握利用。教程会提供...
    大家好,我们今日讲解“VBA信息获取与处理”教程中第十五个专题“将Excel数据信息传递给WORD应用”的第一节“在EXCEL界面实现WORD文档的打开和校验”,这个专题是非常实用的知识点,希望大家能掌握利用。教程会提供配套的程序文件。大家好,当今的时代,信息的传递是非常重要的,我们这个专题的内容是将EXCEL的数据信息传递给OFFICE应用的WORD,下一个专题中还会讲解传递给PowerPoint,至于其他的OFFice应用,传递给Office Access和Outlook的内容,我在其他的教程内容中已经详细地讲解,这里不再多叙

    第一节 在EXCEL界面实现WORD文档的打开和校验

    关于将EXCEL的数据信息传递给WORD,我在很多内容中均有讲解,今天的内容只是汇总再现一下几个关键的知识点,这讲我们先汇总一下如何在EXCEL界面实现WORD文档的打开和校验。

    1  利用后期绑定方案在EXCEL中打开WORD

    关于在EXCEL中打开WORD,我在本套书的第一个专题中也有讲解,那里采用了一个非常典型的后期绑定方案来完成。所谓后期绑定方案就是在代码中实现绑定,利用了CreateObject语句来完成,例如下面的具体实现语句:……………….Dim myWdA As ObjectDim MyDocument As ObjectRR = WordIsOpen("E:\NZ\文章\06 VBA信息获取与处理\001 在WORD中激活EXCEL.docm")If Not RR Then  '创建Word对象     Set myWdA = CreateObject("Word.Application")myWdA.Visible = True '打开指定文档Set MyDocument = myWdA.Documents.Open("E:\NZ\文章\06 VBA信息获取与处理\001 在WORD中激活EXCEL.docm")……….在上述代码中利用了后期绑定的方法实现了打开Word文件。同样我们也可以用前期绑定的方案。

    2  利用前期绑定方案在EXCEL中打开WORD

    利用前期绑定的方案就是在VBE的窗口,点击工具的菜单,找到引用,做如下勾选:7f30c0920ac9447cfdca81297855cb32.png这样就实现了前期绑定的方案。我们在代码中就可以直接使用Word.Applicatio了,我们看一下前期绑定的标准代码:Sub mynz() '打开和关闭word,前期绑定的方案    Dim objApp As Word.Application    Dim objDoc As Word.Document    Set objApp = New Word.ApplicationobjApp.Visible = True    Set objDoc = objApp.Documents.Open(Filename:=ThisWorkbook.Path& "\015WordTest.docx")    'do something此处可以操作objDoc.Close FalseobjApp.Quit    Set objApp = Nothing    Set objDoc = NothingEnd Sub代码截图:8e3a97676c446bc0eb712fc8c8cb468f.png代码讲解:1)上述代码将要打开一个“015WordTest.docx”的文件,当然是在前期绑定基础上进行的2) objDoc.Close False不保存关闭文件3) objApp.Quit退出word

    3  如何对已经打开的WORD文档进行检查

    在操作的时候,我们往往会打开多个文档,如何对这些文档进行检查呢?如:找到我们需要的那个word文档,这就需要利用GetObject语句了,这个语句可以返回已经打开的word文档信息。关于这个语句的讲解,我在本套书的的第一个专题也已经讲过,就不再多述。我们仍是看看利用这个语句来检查已经打开的word文档的标准代码:Sub mynzA() '检查打开的word文档    Dim objApp As Object    Dim objDoc As Object    On Error Resume Next    Set objApp = GetObject(, "Word.Application")objDoc.Application.Visible = True    If objApp Is Nothing ThenMsgBox "当前未检测到打开的Word应用程序!"    Else        For Each objDocInobjApp.DocumentsDebug.PrintobjDoc.Name        Next objDoc    End If    Set objApp = Nothing    Set objDoc = NothingEnd Sub代码截图:da10a1eb9364a922a750c91f7d74ea1a.png代码的讲解:上述代码利用了GetObject语句,捕获已经打开的word文档。并将所有打开文档的name 反馈在即时窗口。我们看看代码的实现效果,这个时候我的窗口已经打开了word文档,下面我要实现捕获。a1ca1ee9dec1a1b63588467e08f35fb0.png这样就实现了信息的输出。本节知识点回向:① CreateObject语句的意义是什么?②  GetObject语句的作用是什么?③  前期绑定WORD与后期绑定如何实现?本讲代码参考文件:015工作表.xlsm1f5588576b74d6c0a4cb9b50b1d49ec5.png

      积木编程的思路内涵:

    在我的系列书籍中一直在强调搭积木”的编程思路,这也是学习利用VBA的主要方法,特别是职场人员,更是要采用这种方案。其主要的内涵:代码不要自己全部的录入。你要做的是把积木放在合适的位置然后去修正代码,一定要拷贝,从你的积木库中去拷贝,然后修正代码,把时间利用到高效的思考上。建立自己的“积木库”。平时在学习过程中,把自己认为有用的代码放在一起,多积累,在用到的时候,可以随时拿来。你的积木库资料越多,你做程序的思路就会越广。1f5588576b74d6c0a4cb9b50b1d49ec5.png

    VBA的应用界定及学习教程:

    VBA是利用Office实现个人小型办公自动化的有效手段(工具)。这是我对VBA的应用界定。在取代OFFICE新的办公软件没有到来之前,谁能在数据处理方面做到极致,谁就是王者。其中登峰至极的技能非VBA莫属!我记得20年前自己初学VBA时,那时的资料甚少,只能看源码自己琢磨,真的很难。20年过去了,为了不让学习VBA的朋友重复我之前的经历,我根据自己多年VBA实际利用经验,推出了六部VBA专门教程,目前教程均通过32位和64位两种OFFICE系统测试。第一套:VBA代码解决方案VBA中各个知识点的讲解,教程共147讲,覆盖绝大多数的VBA知识点,提供的程序文件更是一座不可多得的代码宝库,是初学及中级人员必备教程;目前这套教程提供的版本是修订第二版,程序文件通过32位和64位两种OFFICE系统测试。第二套:VBA数据库解决方案数据库是数据处理的专业利器,教程中详细介绍了利用ADO连接ACCDBEXCEL的方法和实例操作,适合中级人员的学习。目前这套教程提供的是修订第一版教程,程序文件通过32位和64位两种OFFICE系统测试。第三套:VBA数组与字典解决方案   数组和字典是VBA的精华,字典是VBA代码水平提高的有效手段,值得深入的学习,是初级及中级人员代码精进的手段。目前这套教程提供的版本是修订第一版,程序文件通过32位和64位两种OFFICE系统测试。第四套:VBA代码解决方案之视频是专门面向初学者的视频讲解,可以快速入门,更快的掌握这门技能。这套教程是第一套教程(修订一版)的视频讲解,听元音更易接受。这套教程还会额外提供通过32位和64位两种OFFICE系统测试的程序文件。第五套:VBA中类的解读和利用是一部高级教程,讲解类的虚无与肉身的度化,类的利用虽然较少,但仔细的学习可以促进自己VBA理论的提高。这套教程的领会主要是读者的领悟了,领悟一种佛学的哲理。目前这套教程提供的版本是修订第一版,程序文件通过32位和64位两种OFFICE系统测试。第六套教程:《VBA信息获取与处理》是一部高级教程,涉及范围更广,实用性更强,面向中高级人员。教程共二十个专题,包括:跨应用程序信息获得、随机信息的利用、电子邮件的发送、VBA互联网数据抓取、VBA延时操作,剪切板应用、Split函数扩展、工作表信息与其他应用交互,FSO对象的利用、工作表及文件夹信息的获取、图形信息的获取以及定制工作表信息函数等等内容。程序文件通过32位和64位两种OFFICE系统测试。上述教程的学习顺序:1326→5或者43265提供的程序文件更是一座巨大的代码库,供读者使用,如需要可以WeChat: NZ9668403748223574a6f7cafce13b16a56daa.png

    学习VBA是个过程,也需要经历一种枯燥的感觉

    “众鸟高飞尽,孤云独去闲。相看两不厌,只有敬亭山”。学习的过程也是修心的过程,修一个平静的心。在代码的世界中,心平静了,心情好了,身体自然而然就好。心静则正,内心里没有那么多邪知邪见,也就没有那么多妄想。利人就是利己。我的教程助力给正在努力的朋友。“水善利万物而不争”,绵绵密密,微则无声,巨则汹涌。学习亦如此,知道什么是自己所需要的,不要蜷缩在一小块自认为天堂的世界里,待到暮年时再去做自欺欺人的言论。要努力提高自己,用一颗充满生机的心灵,把握现在,这才是进取。越是有意义的事情,困难会越多。愿力决定始终,智慧决定成败。不管遇到什么,都是风景。看淡纷争,看轻得失。学习时微而无声,利用时则巨则汹涌。“路漫漫其修远兮,吾将上下而求索”每一分收获都是成长的记录,怎无凭,正是这种执着,成就了朝霞的灿烂。最后将一阙词送给致力于VBA学习的朋友,让大家感受一下学习过程的枯燥与执着:浮云掠过,暗语无声,唯有清风,惊了梦中啼莺。望星,疏移北斗,奈将往事雁同行。阡陌人,昏灯明暗,忍顾长亭。 多少VBA人,暗夜中,悄声寻梦,盼却天明。怎无凭!分享我多年工作实际经验的成果,随喜这些有用的东西,给确实需要利用VBA的同路人。回向学习利用VBA的历历往事,不胜感慨,谨以这些文字以纪念,分享成果,随喜正能量

    加微信NZ9668可获得详细资料信息

    _______________________________


    有启发 点在看,转给朋友 约作者 请留言,直接交流

    更多关联阅读

    3eb7c03ec8db684e61b9873a6c4c6954.png

    54b5c88aca282b5e62df3ea37dc5ffe8.png

    8f5baf6d05cb1a6283878afec7d0098e.png

    1edfe7fbc5a85b972ff1e3f7c64ea86f.png

    7213450202b42a6b3c2da4f521d61dfb.png

    60ca8281136ded103cb067ab9fde0663.png

    ca162dc4100a6c023cf3e0345d24ab7f.png

    展开全文
  • 文章应用VBA二次开发编程,结合Word 2007对象模型Table对象,将Word 2007表格原始数据读出,然后新建行列转置的表格,将读出的数据写入到新表格的单元格中,完成表格的行列转置,再将其转换为Word 2007加载项,解决了工作中...
  • 基于OLE和VBA的数据库与WORD数据交互,VBA高级编程
  • 面向对象、设计原则、设计模式、编程规范...面向对象编程与面向过程的区别和联系面向对象分析,面向对象设计、面向对象编程接口和抽象类的区别各自的应用场景基于接口实现的编程的设计思想多个组合少用继承的设计...

    面向对象、设计原则、设计模式、编程规范、重构

    面向对象

    主流的三个编程风格有:面向对象,面向过程,函数式编程。

    面向对象是最主流的风格,面向对象具有丰富的特性(封装,抽象,继承,多态)。

    面向对象

    • 面向对象的4大特性:封装、继承,抽象、多态。
    • 面向对象编程与面向过程的区别和联系
    • 面向对象分析,面向对象设计、面向对象编程
    • 接口和抽象类的区别与各自的应用场景
    • 基于接口实现的编程的设计思想
    • 多个组合少用继承的设计思想
    • 多面向过程的贫血模型和面向对象的充血模型

    设计原则

    设计原则是指导我们代码设计的一些总结,设计原则有 SOLID 原则:

    • SOLID 原则- SRP 单一职责原则
    • SOLID 原则- OCP 开闭原则
    • SOLID 原则- LSP 里氏替换原则
    • SOLID 原则- ISP 接口隔离原则
    • SOLID 原则- DIP 依赖倒置原则
    • DRY  原则、KISS 原则、 YAGNI 原则、LOD 法则

    设计模式

    设计模式是针对软件开发中遇到的一些设计问题,经典的设计模式有 23 种。但是可以分成 3 大类:创建型,结构型,行为型。

    • 创建型 常见是设计模式有: 单利模式、工厂模式(工厂方法和抽象工厂)、建造者模式 不常见的有:原型模式

    • 结构型 常用的有:代理模式,桥接模式,装饰器模式,适配器模式。不常用的有:门面模式、组合模式、享元模式

    • 行为型 常用的有:观察者模式、模板模式、策略模式、职责链模式、迭代器模式、状态模式 不常用的:访问者模式、备忘录模式、命令模式、解释权模式、中介模式

    编程规范

    编程规范主要解决的是代码可读性的问题。编程规范相对于设计原则,设计模式,更加具体,更加偏重代码细节。

    编程规范《重构》《代码大全》《代码整洁之道》是非常好的参考资料

    代码重构

    没有一劳永逸的设计,需要随着需求的变化,不断迭代。重构的工具是面向对象设计思想,设计原则,设计模式,编码规范。

    • 重构的目的(why)、对象(what)、时机(when)、方法(how)
    • 保证重构不出错的技术手段:单元测和代码可测试性。
    • 两种不同规模的聪哥:大重构额小重构

    面向对象、设计原则、设计模式、编程规范、代码重构 本质上都是服务于编写高质量代码的。面向对象编程因为具有丰富的特性(封装,抽象,继承,多态),可以实现很多复杂的设计思路,很多设计原则,设计模式等编码实现的基础。

    欢迎关注公众号:程序员开发者社区

    e8233aaefe3bd3551a159d8e8d1bdd1d.png

    展开全文
  • 本文是《代码大全2》[1]的读书笔记。之前也读过一些代码整洁相关的书籍,但是随着时间推移,很多都遗忘了。因此,在开始读这本书之前,打算尝试做着记录,... 构建活动主要是编码调试,涉及详细设计、规划构建、...
  • VBA编程知识点(8)——split函数动态数组学习自杨洋老师《全民一起VBA》数组excel表格的对比1. 两者是相似的。Excel表格本身就是一个大数组。2. 在没有表格概念的软件中,如word、ppt中只能使用数组3. 因为没有...
  • Office百宝箱多国语言全家福版,包括Excel万能百宝箱、Word万能百宝箱、PPT百宝箱、Outlook万能百宝箱、Office编程百宝箱、Publisher万能百宝箱、VBA百宝箱、Access百宝箱等。所有功能Office2003--Office2019+繁简体...
  • VBA编程知识点(8)——split函数动态数组学习自杨洋老师《全民一起VBA》数组excel表格的对比1. 两者是相似的。Excel表格本身就是一个大数组。2. 在没有表格概念的软件中,如word、ppt中只能使用数组3. 因为没有...
  • 使得程序设计人员仅需学习一种统一的标准宏语言,就可以转换到特定的应用软件上去,程序设计人员在编程和调试代码时所看到的是相同的用户界面,而且VBA 原应用软件的宏语言相兼容,以保障用户在代码和工作上的投资...
  • 学习Excel技术,关注微信公众号:excelperfectVBA是一种通用编程语言,适用于任何内置有VBA的应用程序,因此Word VBA与Excel VBA的语法一样,只是处理的对象模型不同。下面,我们通过一些示例语句及其作用描述来熟悉...
  • EXCEL编程VBA高级教程

    2015-04-16 11:40:55
    第四节变量常量............................................................................................................................1 第五节数组...................................................
  • VB与VBA技术手册

    2011-12-22 22:25:20
    无论是在VB环境中编程还是在如Word、Excel等VBA宿主环境中创建应用程序,VBA语言(仅有极少数例处)几乎是完全相同的。除非特别声明,本书中描述的语言元素在VB的零售版本和VBA的宿主环境中的用法完全是一样的;因则,...
  • 基于VBA的控件类设计应用,付尚朴,李方军,在设计基于VBAWord试题模板时,发现在VBE环境下无控件数组,使得同类控件只能有分开的不同的事件过程,导致编程效率低。本文通过��
  • 第一类小程序可以加载到Word工具栏中,菜单栏中的命令一样使用。第二类程序是一系列启用宏程序的Word文档或者Excel工作簿,而且文件中有都加载了对应的命令按钮,直接点击按钮就可以运行。第二类小程序像一个个...
  • 酱紫的话,当鼠标划过单元格,Excel就会自动显示图片了,很酷很实用……比如下面动态图所展示的这样:哎呦,不错哦~~实现代码如下:Sub CommentPic() 'ExcelHome VBA编程学习实践 看见星光 Dim Arr, i&...
  • VBA是一种编程语言,它依托于Office软件,可以实现各种Office软件操作的自动化。也就是说,只要我们用Office软件,如EXCEL,WORD也就是有了应用VBA的理由。为什么用VBA呢?其实最初的很多朋友都有一个共同的理由...
  • Delphi与Word之间的融合技术

    千次阅读 2007-01-11 15:03:00
    Delphi与Word之间的融合技术(yzhshi@263.net)一、VBA代码含义Microsoft Word是一个集成化环境,是美国微软公司的字处理系统,但是它决不仅仅是一个字处理系统,它集成了Microsoft Visual Basic,可以通过编程来实现...
  • 一、VBA代码含义Microsoft Word是一个集成化环境,是美国微软公司的字处理系统,但是它决不仅仅是一个字处理系统,它集成了Microsoft Visual Basic,可以通过编程来实现对Word功能的扩展。Microsoft Visual Basic在...
  • Excel_VBA教程

    2014-09-22 11:36:34
    三、学习微软 EXCEL 2002 VBA 编程和XML,ASP技术 22 第一章 电子表格自动化简介和了解宏命令 22 1了解宏 22 2宏命令的普通应用 22 3写宏之前的计划 23 4录制宏 24 5运行宏 26 6修改宏代码 26 7添加注释 29 8分析宏...
  • 鉴于不同编程语言所支持通配符不同,Excel与word支持的通配符也不同,而通配符作为日常操作中经常可以起到事半功倍作用的小符号,实在需要系统地总结下。本文总结了ExcelVBA中所支持的通 配符,并结合like操作符和11...
  • 第12章VBA与应用程序 12.1调试VBA应用程序 12.2VBA应用程序的错误处理 12.3显示缩略图——DwgThumbnail组件 12.4显示停靠窗口——Accont组件 12.5显示幻灯片——Slide组件 12.6解析表达式——MSScript组件 12.7创建...

空空如也

空空如也

1 2 3 4 5 ... 7
收藏数 122
精华内容 48
热门标签
关键字:

vba与word编程