设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 91149|回复: 190
打印 上一主题 下一主题

[Access本身] Access技巧接龙

[复制链接]

点击这里给我发消息

跳转到指定楼层
1#
发表于 2004-11-28 18:15:00 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式
相信大家都玩过成语接龙,我们也来个Access的技巧接龙游戏,看看此龙能接多长。

接龙规则:

  - 只要是你认为是好的使用或开发技巧和文章,就可跟贴

  - 别人推荐给你的Access使用和开发技巧,也可跟贴

  - 国外或国内Access网站的技巧,翻译或整理的文章,也可跟贴

  - 技巧难度可以从简单、中级到高级应用。

  - 技巧内容可以任意。比如使用技巧、表操作、vba、API、ActiveX、加载项、类、打包帮助等。

  - 跟贴前请尽量看完楼上的贴,以避免重复。

  - 为了尊重源作者,请尽量写明源作者

  - 非常好的技巧贴,可被挑选放入网站首页的文章区

  - 跟贴次数不限,但尽量避免闲聊,多发技巧文章贴

此贴总置顶,让Access的网友都来发挥自己的一份热量,来了Office中国永不沉落的贴子。

Excel、Word、sharepint等随后也将增加相应的接龙贴。

本帖被以下淘专辑推荐:

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏2 分享分享 分享淘帖1 订阅订阅

点击这里给我发消息

2#
 楼主| 发表于 2004-12-4 06:55:00 | 显示全部楼层
也来介绍一个工具,非常不错,主要用来处理过滤与通用查找的. 下载请到:

http://www.office-cn.net/Tools/ActiveXAddin/ActiveX/200412/108.asp

点击这里给我发消息

3#
 楼主| 发表于 2005-4-7 01:29:00 | 显示全部楼层
取文本文件的行数
注意: myInFile是文件名 适应大小文件  (tmtony)






Function lineCount(myInFile As String) As Long





    Dim lFileSize As Long, lChunk As Long





    Dim bFile() As Byte





    Dim lSize As Long





    Dim strText As String





    lSize = CLng(1024) * 10





    ReDim bFile(lSize - 1) As Byte





    Open myInFile For Binary As #1





    lFileSize = LOF(1)





     lChunk = 1





    Do While (lSize * lChunk) < lFileSize





         Get #1, , bFile





        strText = StrConv(bFile, vbUnicode)





        lineCount = lineCount + searchText(strText)





         lChunk = lChunk + 1





    <ST1LACE>Loop</ST1LACE>





   ReDim bFile((lFileSize - (lSize * (lChunk - 1))) - 1) As Byte





    Get #1, , bFile





    strText = StrConv(bFile, vbUnicode)





    lineCount = lineCount + searchText(strText)





    Close #1





    lineCount = lineCount + 1





End Function

点击这里给我发消息

4#
 楼主| 发表于 2005-4-7 03:18:00 | 显示全部楼层
MD5加密算法:
Option Explicit

Dim w1 As String, w2 As String, w3 As String, w4 As String

Function MD5F(ByVal tempstr As String, ByVal w As String, ByVal X As S
tring, ByVal y As String, ByVal z As String, ByVal Xin As String, ByVa
l qdata As String, ByVal rots As Integer)
    MD5F = BigMod32Add(RotLeft(BigMod32Add(BigMod32Add(w, tempstr), Bi
gMod32Add(Xin, qdata)), rots), X)
End Function

Sub MD5F1(w As String, ByVal X As String, ByVal y As String, ByVal z A
s String, ByVal Xin As String, ByVal qdata As String, ByVal rots As In
teger)
Dim tempstr As String

    tempstr = BigXOR(z, BigAND(X, BigXOR(y, z)))
    w = MD5F(tempstr, w, X, y, z, Xin, qdata, rots)
End Sub

Sub MD5F2(w As String, ByVal X As String, ByVal y As String, ByVal z A
s String, ByVal Xin As String, ByVal qdata As String, ByVal rots As In
teger)
Dim tempstr As String

    tempstr = BigXOR(y, BigAND(z, BigXOR(X, y)))
    w = MD5F(tempstr, w, X, y, z, Xin, qdata, rots)
End Sub

Sub MD5F3(w As String, ByVal X As String, ByVal y As String, ByVal z A
s String, ByVal Xin As String, ByVal qdata As String, ByVal rots As In
teger)
Dim tempstr As String

    tempstr = BigXOR(X, BigXOR(y, z))
    w = MD5F(tempstr, w, X, y, z, Xin, qdata, rots)
End Sub

Sub MD5F4(w As String, ByVal X As String, ByVal y As String, ByVal z A
s String, ByVal Xin As String, ByVal qdata As String, ByVal rots As In
teger)
Dim tempstr As String

    tempstr = BigXOR(y, BigOR(X, BigNOT(z)))
    w = MD5F(tempstr, w, X, y, z, Xin, qdata, rots)
End Sub

Function MD5_Calc(ByVal hashthis As String) As String
ReDim buf(0 To 3) As String
ReDim Xin(0 To 15) As String
Dim tempnum As Integer, tempnum2 As Integer, loopit As Integer, loopou
ter As Integer, loopinner As Integer
Dim a As String, b As String, c As String, d As String

    ' Add padding

    tempnum = 8 * Len(hashthis)
    hashthis = hashthis + Chr$(128) 'Add binary 10000000
    tempnum2 = 56 - Len(hashthis) Mod 64

    If tempnum2 < 0 Then
        tempnum2 = 64 + tempnum2
    End If

    hashthis = hashthis + String$(tempnum2, Chr$(0))

    For loopit = 1 To 8
        hashthis = hashthis + Chr$(tempnum Mod 256)
        tempnum = tempnum - tempnum Mod 256
        tempnum = tempnum / 256
    Next loopit

     

    ' Set magic numbers
    buf(0) = "67452301"
    buf(1) = "efcdab89"
    buf(2) = "98badcfe"
    buf(3) = "10325476"

     

    ' For each 512 bit section
    For loopouter = 0 To Len(hashthis) / 64 - 1
        a = buf(0)
        b = buf(1)
        c = buf(2)
        d = buf(3)

        ' Get the 512 bits
        For loopit = 0 To 15
            Xin(loopit) = ""
            For loopinner = 1 To 4
                Xin(loopit) = Hex$(Asc(Mid$(hashthis, 64 * loopouter +
4 * loopit + loopinner, 1))) + Xin(loopit)
                If Len(Xin(loopit)) Mod 2 Then Xin(loopit) = "0" + Xin
(loopit)
            Next loopinner
        Next loopit

        ' Round 1
        MD5F1 a, b, c, d, Xin(0), "d76aa478", 7
        MD5F1 d, a, b, c, Xin(1), "e8c7b756", 12
        MD5F1 c, d, a, b, Xin(2), "242070db", 17
        MD5F1 b, c, d, a, Xin(3), "c1bdceee", 22
        MD5F1 a, b, c, d, Xin(4), "f57c0faf", 7
        MD5F1 d, a, b, c, Xin(5), "4787c62a", 12
        MD5F1 c, d, a, b, Xin(6), "a8304613", 17
        MD5F1 b, c, d, a, Xin(7), "fd469501", 22
        MD5F1 a, b, c, d, Xin(8), "698098d8", 7
        MD5F1 d, a, b, c, Xin(9), "8b44f7af", 12
        MD5F1 c, d, a, b, Xin(10), "ffff5bb1", 17
        MD5F1 b, c, d, a, Xin(11), "895cd7be", 22
        MD5F1 a, b, c, d, Xin(12), "6b901122", 7
        MD5F1 d, a, b, c, Xin(13), "fd987193", 12
        MD5F1 c, d, a, b, Xin(14), "a679438e", 17
        MD5F1 b, c,

点击这里给我发消息

5#
 楼主| 发表于 2005-4-7 04:38:00 | 显示全部楼层
做了一个给你,用DLL也可, 不用DLL也可(可免注册,安装方便一点) 功能类似


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-2 13:49 , Processed in 0.088165 second(s), 32 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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