'引用 Microsoft OLE DB Service Component 1.0 Type Libary
Private Sub Command1_Click()
Dim x As New MSDASC.DataLinks
Dim c As New ADODB.Connection
x.PromptEdit c
Debug.Print c.ConnectionString
c.Open
End Sub
Private Sub Command1_Click()
Dim x As New MSDASC.DataLinks
Dim c As New ADODB.Connection
x.PromptEdit c
Debug.Print c.ConnectionString
c.Open
End Sub
解决方案 »
- 请大家帮我看看为什么无法返回进程啊.急
- vb+msde sp4打包
- --> ListView添加Item的关键字不能“以数字开始是字符串”,请问问什么?
- 一个陌生的dll文件,知道接口函数但是不知道类型!如何在VB中调用!
- EXCEL数组失效问题
- ActiveX组件自动升级问题:如何编程找出某个ActiveX对象所对应的文件(dll,ocx,exe)的路径?
- 给个范例参考,但如何通过代码改变TextBox 的只读属性MultiLine
- 指一条路!送100分!
- 图片的读取(Access),得到答案就结贴,不够再加分
- vb 截包与发包问题
- 怎样使datagrid不绑定recordset,而处于编辑状态?
- 请问怎样使一个flash全屏播放?
Private Sub Command1_Click()
Dim x As New MSDASC.DataLinks
Dim c As New ADODB.Connection
x.PromptEdit c
Debug.Print c.ConnectionString
c.Open
End Sub
http://www.csdn.net/expert/topic/545/545492.xml
dim cn as adodb.connection
set cn = new connection
cn.open "dsn=test"
cn.excute text1
text1为你要输入的SQL脚本
复杂的用vba sdk吧
推荐用vba sdk,绝佳
eval方法是可以执行几乎所有的vbscript代码
只是在对象的使用上,要先调用addobject方法
创建 SimpleScript 工程
在“File”菜单上,单击“New Project”。
在“New Project”对话框中,双击“Standard Exe”图标。
按下 F4 键打开“Properties”窗口。双击 Name 属性,将窗体名改为 frmSimpleScript。
双击 Caption 属性,将其设为 Simple Script Demo。
在“Project”菜单上,单击“Add Class Module”。
在“Add Class Module”对话框中,双击“Class Module”图标。
这时会将对象模型加入到 Script 控件中。
在“Properties”窗口中,双击“Name”,将名称改为 MyClass。
将下列代码添加到类模块中:
Option Explicit
Private ObjRate As Double
Public Property Get Rate() As Double
Rate = ObjRate
End Property
Public Property Let Rate(newRate As Double)
ObjRate = newRate
End Property
Public Function TaxIt(price) As Double
TaxIt = price + (price * ObjRate)
End Function
将 CommandButton1、TextBox1 和 ListBox1 控件添加到窗体中,并将它们的属性设为下表所示的值。
控件属性值
CommandButton1NamecmdAddCode
CaptionAddCode
Height255
Left0
Top240
Width1215
TextBox1NametxtScript
MultiLineTrue
ScrollBars2 – Vertical
Height1575
Left1320
Top240
Width4335
ListBox1NamelstProcedures
Height645
Left1320
Top2150
Width4335
在工具箱上单击右键并单击“Components”,显示“Components”对话框。双击“Microsoft Script Control 5.0”,然后单击“OK”。
在工具箱上双击 ScriptControl 图标将其添加到窗体中。
将Script 控件重新命名为 scDemo。
将下列代码粘贴到窗体的Declaration部分。
Option Explicit
Private MyObject As New MyClass
Private Sub Form_Load()
' 将 MyObject 添加到 Script 控件中。
' 这会将对象模型添加到
' 控件中。
scDemo.AddObject "objScript", MyObject
' 向 TextBox 控件中添加脚本。
txtScript.Text = _
"Sub SetRate()" & vbCrLf & _
" Dim Rate" & vbCrLf & _
" Rate = InputBox(""TaxRate:"",,.086)" & _
vbCrLf & _
" objScript.Rate = Rate" & vbCrLf & _
"End Sub" & vbCrLf & vbCrLf & _
"Sub TotalPrice()" & vbCrLf & _
" Dim price, ttl" & vbCrLf & _
" price = InputBox(""Price:"",,100)" & _
vbCrLf & _
" ttl =objScript.TaxIt(price)" & vbCrLf & _
" MsgBox ttl" & vbCrLf & _
"End Sub"
End Sub
Private Sub cmdAddCode_Click()
' 将 TextBox 中的代码添加到控件中。
scDemo.AddCode txtScript.Text
' 清除 ListBox,将Procedures集合中各个过程的
' 名称加入其中。
lstProcedures.Clear
Dim p As Procedure
For Each p In scDemo.Procedures
lstProcedures.AddItem p.Name
Next
End Sub
Private Sub lstProcedures_Click()
' 运行列表框中的过程。
scDemo.Run lstProcedures.Text
End Sub
运行 SimpleScript 工程
按下 F5 键运行工程。
单击“AddCode”向控件中添加代码。ListBox 控件会显示刚刚加入的过程名称。
在 ListBox 控件中单击“SetRate”。对话框显示缺省值 8.6,改变比率或者只单击“OK”。
在 ListBox 控件中,单击“TotalPrice”。对话框显示缺省值 100。改变值并单击“OK”。将会显示总值加上税率。
在 TextBox 控件中编辑代码
在将代码加入控件之前也可以对其进行修改。
在 TextBox 控件中,将 MsgBox 的 SetRate 缺省值改为 4.2。
单击“AddCode”。
在 ListBox 控件中,单击“SetRate”。缺省值已经改变。
在 TextBox 控件中添加过程
试着在 Textbox 控件中插入自己的代码。
在 Textbox 控件中,粘贴如下代码:
Sub VariableTax()
Dim Years, results, ttlInterest
Dim i, principal, payment, interest, mortgage
principal = InputBox("Borrow:",,100000)
Years = InputBox("How long:",,15)
results = "Payment" & vbtab & "Interest" & vbcrlf
For i = 1 to Years * 12
interest = (principal * objScript.Rate) / 12
principal = principal - interest
ttlInterest = ttlInterest + interest
results = results & i & vbtab & formatNumber(interest,2) & vbcrlf
Next
MsgBox results
MsgBox "Total Interest Paid:" & "$" & formatNumber(ttlInterest,2)
End Sub
单击“AddCode”。
单击“SetRate”,改变比率,然后单击“OK”。
单击“VariableTax”运行新过程。
》中的第十三章(本来我是想专门写一篇文章谈这个问题的,不过看来你等
不及)在这一章里,详细的介绍了Scripting Control,并最终实现了一个象
EXCEL里那样的可输入公式的表格,加点改进应该能符全你的要求。
虽然VBS和VBA是不一样的(可见我的第一篇文章),但大多数时候只用
VBS就能完成工作,用Scripting Control是不用钱的。
我的文章《VB到底为我们做了什么》:
http://www.csdn.net/develop/list_article.asp?author=AdamBear
ScriptControl1.ExecuteStatement Text1.Text
也支持插入模块,插入对象,就是AddObject和AddCode。
这些功能已经和VBA里的CodeModule.AddFromString相当了,我曾经用Excel的
VBA功能写过一个宏病毒,病毒代码就放在一个隐藏工作表的一个单元格里,
我想你要实现的功能和这差不多吧!所以用Scripting Control也能行。
Private MyObject As New MyClass
scDemo.AddObject "objScript", MyObject 改称
Private MyObject As New adodb.connection
scDemo.AddObject "objScript", MyObject
了,程序有500k,不好贴,本来是留着写文章用的,你要是急,留下地址,
我给你。
上次,好象那个贴子上你问过我Scripting Control支不支持事件,当然
支持,它有个State属性,连接后就能在脚本里处理事件了,对不起,我实现
找不到上次那个贴子了。
如下:
ScriptControl1.State = Connected
然后,就可以在Object_event里处理事件了。