ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: yiyiyicz

[分享] 再见了

[复制链接]

TA的精华主题

TA的得分主题

发表于 2012-10-30 23:44 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
继承、多态,包括重载 这些方面VBA真的是天生不足啊
我刚接触面向对象思想不久,但真的被这种思想所吸引,只是vba没办法实现,所以只能用vb.net玩玩

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-10-31 05:57 | 显示全部楼层
VB,NET怎么入门啊
先需要下载系统软件吧?有多大?
据介绍,vb.net功能比VBA强多了

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-10-31 07:06 | 显示全部楼层
HHAAMM 发表于 2012-10-30 23:44
继承、多态,包括重载 这些方面VBA真的是天生不足啊
我刚接触面向对象思想不久,但真的被这种思想所吸引, ...

用VB.NET
非常有道理,非常好的建议
MSDOM,JavaScript,的代码一看就不是VB/VBA代码;而VB.NET的代码粗看还看不出来不是VB/VBA代码

不知这样的认识对不对:凡是在VBA中有的功能,在VB.NET中都有。并且编程格式也是一样的
比如:添加引用(在CAD二次开发时,需要添加这个软件的引用)

还望版主赐教

TA的精华主题

TA的得分主题

发表于 2012-10-31 12:36 | 显示全部楼层
VB.NET是.NET平台下的一种开发语言,语法和VB类似。但他是面向对象的,所以"类"是其中的一个基本概念。个人感觉将他理解成可以用面向对象思想编程的VB也合适。
下个VS2010安装,再设置下office(论坛有相关帖子可参考)。启动VS2010后可以选择用什么语言编写程序和要编写什么程序。
下面是个控制台应用程序,展示的是继承、多态的实现
  1. Imports System
  2. Class ClassA
  3.     Public Sub SendMessage()
  4.         Console.WriteLine("From SendMessage in ClassA")
  5.     End Sub
  6. End Class
  7. Class ClassB
  8.     Inherits ClassA
  9.     Public Sub SendPersonalMessage()
  10.         Console.WriteLine("From SendPersonalMessage in ClassB")
  11.     End Sub
  12. End Class
  13. Class ClassC
  14.     Inherits ClassB
  15.     Public Sub SendPrivateMessage()
  16.         Console.WriteLine("From SendPrivateMessage in ClassC")
  17.     End Sub
  18. End Class
  19. Module Module1
  20.     Sub Main()
  21.         Dim a As ClassA = New ClassA()
  22.         Dim b As ClassB = New ClassB()
  23.         Dim c As ClassC = New ClassC()
  24.         a.SendMessage()
  25.         b.SendMessage()
  26.         b.SendPersonalMessage()
  27.         c.SendMessage()
  28.         c.SendPersonalMessage()
  29.         c.SendPrivateMessage()
  30.         Console.ReadKey()
  31.     End Sub
  32. End Module
复制代码

TA的精华主题

TA的得分主题

发表于 2012-10-31 12:52 | 显示全部楼层
.NET平台是微软想一统江湖式的一个开发平台。几乎所有语言都可以在这个平台上开发,同时也几乎可以开发所有程序(桌面应用程序,c/s结构的程序、web、嵌入式程序,手机程序,office二次开发)。
这个平台下还有个托管的概念,用句白话可以这么说:.NET平台下对excel二次开发,在excel工作簿中并看不到代码。

TA的精华主题

TA的得分主题

发表于 2012-10-31 12:58 | 显示全部楼层
  1. Class ClassC

  2.     Inherits ClassB

  3.     Public Sub SendPrivateMessage()

  4.         Console.WriteLine("From SendPrivateMessage in ClassC")

  5.     End Sub

  6. End Class

复制代码
这一句我解释下
ClassC这个类继承了ClassB,同时他还有自己的SendPrivateMessage方法

TA的精华主题

TA的得分主题

发表于 2012-10-31 13:01 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
我的体会,跟着演练做,然后尝试在第一个演练的代码里 增加范围,增加功能
比如 插件的第一个演练
http://msdn.microsoft.com/zh-cn/library/cc668205(v=vs.100).aspx#Y998

跟着做,vb.net,C#都有
vs2010最好装旗舰版

TA的精华主题

TA的得分主题

发表于 2012-10-31 13:04 | 显示全部楼层
代码中的Console.WriteLine这句就将他理解成vba中的Debug.Print
Console.ReadKey()的实际效果类似于将结果显示出来让你看到
这两句和继承、多态没关系的

TA的精华主题

TA的得分主题

发表于 2012-10-31 13:07 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
呵呵,再来个看着眼熟的
  1. Public Class Sheet1

  2.     Private Sub Sheet1_ActivateEvent() Handles Me.ActivateEvent
  3.         MsgBox(1)
  4.     End Sub

  5.     Private Sub Sheet1_Startup() Handles Me.Startup
  6.         MsgBox(2)
  7.     End Sub

  8.     Private Sub Sheet1_Shutdown() Handles Me.Shutdown
  9.         MsgBox(3)
  10.     End Sub

  11.     Private Sub Sheet1_SelectionChange(ByVal Target As Microsoft.Office.Interop.Excel.Range) Handles Me.SelectionChange
  12.         Target.Value = 1
  13.     End Sub

  14.     Private Sub Sheet1_Change(ByVal Target As Microsoft.Office.Interop.Excel.Range) Handles Me.Change

  15.     End Sub

  16.     Private Sub Sheet1_Calculate() Handles Me.Calculate

  17.     End Sub
  18. End Class
复制代码
不用解释,这是Sheet1模块里的代码

TA的精华主题

TA的得分主题

发表于 2012-10-31 13:27 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
C#是微软专门针对.NET平台开发的语言,和java很像,和javascript的某些部分看着也像

如果不习惯那种大括号的写法也不想去学,那就在.NET平台下用VB开发,不过这个平台下的VB是VB.NET。VB面向对象升级版语言。
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-6-23 11:44 , Processed in 0.031699 second(s), 6 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表