设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12
返回列表 发新帖
楼主: snail39
打印 上一主题 下一主题

[其它] 我是朋友介绍来的~~我有个高难度的问题..大家帮忙

[复制链接]
11#
发表于 2003-6-18 00:10:00 | 只看该作者
在Access里写个自定义函数吧,Access自身的JetSql无法直接处理。
12#
 楼主| 发表于 2003-6-18 16:59:00 | 只看该作者
在access里面写的函数在vb里面用ado.open"select aaa(1,2) from tablename"会提示"aaa函数没有定义"的
请参阅http://expert.csdn.net/Expert/topic/1864/1864330.xml?temp=.9283563
13#
 楼主| 发表于 2003-6-18 18:02:00 | 只看该作者
14#
发表于 2003-6-18 21:49:00 | 只看该作者
说得不错,不光是自定义函数,Access自己的函数库里也有很多只能在Access本身的环境里用。
   不过,你可以变通一下,在Access里做成现成的视图(Access里叫查询,这样子就不会有函数不支持的问题了),这样就能把它当表来使用了,当然更可以在此基础上用Sql语句来检索记录了。
   我在用Delphi开发的时候就是如此的,其它如操作查询(相当于存储过程)如果用到不支持的函数也可以此法处理。
15#
发表于 2003-6-19 02:27:00 | 只看该作者

从VB里调用Access中的自定义函数

来源:微软网站

通过使用 Application 对象的“运行”方法调用存放在 Microsoft Access 数据库中的自定义 Visual Basic 过程。自定义过程必须作为 Public 声明并且要位于标准模块(非窗体或报表模块)中。例如,可以向 Northwind.mdb 示例数据库的新模块中添加下面的函数:   
Public Function MyDateAdd(interval As String, number As Integer, _
     startdate As Date) As Date
     MyDateAdd = DateAdd(interval, number, startdate)
       'Calls the Microsoft Access built-in DateAdd function.
End Function

要运行上述函数,请将下面的示例代码添加到程序中。
  Dim objAccess as Object, newdate as Date
   Set objAccess = GetObject _
      ("C:\Program Files\Microsoft Office\Office\Samples\Northwind.mdb")
   newdate = objAccess.Run("MyDateAdd", "m", 1, Date)
   MsgBox newdate,,"MyDateAdd returned"
16#
发表于 2003-6-19 16:51:00 | 只看该作者
嘿嘿,这还是在Access的怀抱里运行呢:),要是想这样调用,在VB里写个函数就行了,哪还用如此复杂?
  用Sql语句检索记录时,直接在Access环境里运行和让Access提供Sql服务是不同的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-6-1 06:02 , Processed in 0.106999 second(s), 27 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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