当前位置:编程学习 > VB >>

excel如何让实现这样的制作

15  测试开头64K的系统存储器。 第2通道计时器测试了一半;8254第2通道计时器即将完成测试。 第一个64DK RAM第5位故障。 
16  建立8259所用的中断矢量表。 第2通道计时器测试结束;8254第1通道计时器即将完成测试。 第一个64DK RAM第6位故障。 
17  调准视频输入/输出工作,若装有视频BIOS则启用。 第1通道计时器测试结束;8254第0通道计时器即将完成测试。 第一个64DK RAM第7位故障。
18  测试视频存储器,如果安装选用的视频BIOS通过,由可绕过。 第0通道计时器测试结束;即将开始更新存储器。 第一个64DK RAM第8位故障。
19  测试第1通道的中断控制器(8259)屏蔽位。 已开始更新存储器,接着将完成存储器的更新。 第一个64DK RAM第9位故障。 
1A  测试第2通道的中断控制器(8259)屏蔽位。 正在触发存储器更新线路,即将检查15微秒通/断时间。 第一个64DK RAM第10位故障。 
1B  测试CMOS电池电平。 完成存储器更新时间30微秒测试;即将开始基本的64K存储器测试。 第一个64DK RAM第11位故障。
1C  测试CMOS检查总和。第一个64DK RAM第12位故障。
1D  调定CMOS配置。 . 第一个64DK RAM第13位故障。
1E  测定系统存储器的大小,并且把它和CMOS值比较。 . 第一个64DK RAM第14位故障。
1F  测试64K存储器至最高640K。 . 第一个64DK RAM第15位故障
20  测量固定的8259中断位。 开始基本的64K存储器测试;即将测试地址线。 从属DMA寄存器测试正在进行或失灵。
21  维持不可屏蔽中断(NMI)位(奇偶性或输入/输出通道的检查)。 通过地址线测试;即将触发奇偶性。 主DMA寄存器测试正在进行或失灵。
22  测试8259的中断功能。 结束触发奇偶性;将开始串行数据读/写测试。 主中断屏蔽寄存器测试正在进行或失灵。
23  测试保护方式8086虚拟方式和8086页面方式。 基本的64K串行数据读/写测试正常;即将开始中断矢量初始化之前的任何调节。 从属中断屏蔽存器测试正在进行或失灵。
24  测定1MB以上的扩展存储器。 矢量初始化之前的任何调节完成,即将开始中断矢量的初始准备。 设置ES段地址寄存器注册表到内存高端。
25  测试除头一个64K之后的所有存储器。 完成中断矢量初始准备;将为旋转式断续开始读出8042的输入/输出端口。 装入中断矢量正在进行或失灵。
26  测试保护方式的例外情况。 读出8042的输入/输出端口;即将为旋转式断续开始使全局数据作初始准备。 开启A20地址线;使之参入寻址。
27  确定超高速缓冲存储器的控制或屏蔽RAM。 全1数据初始准备结束;接着将进行中断矢量之后的任何初始准备。 键盘控制器测试正在进行或失灵。
28  确定超高速缓冲存储器的控制或者特别的8042键盘控制器。 完成中断矢量之后的初始准备;即将调定单色方式。 CMOS电源故障/检查总和计算正在进行。
29  已调定单色方式,即将调定彩色方式。 CMOS配置有效性的检查正在进行。   
2A  使键盘控制器作初始准备。 已调定彩色方式,即将进行ROM测试前的触发奇偶性。 置空64K基本内存。
2B  使磁碟驱动器和控制器作初始准备。 触发奇偶性结束;即将控制任选的视频ROM检查前所需的任何调节。 屏幕存储器测试正在进行或失灵。   
2C  检查串行端口,并使之作初始准备。 完成视频ROM控制之前的处理;即将查看任选的视频ROM并加以控制。 屏幕初始准备正在进行或失灵。   

这些是一部分诊断代码和解释·我想要做一个框架·当你输入诊断代码时·会自己显示出相关的解释·如果懂的请帮忙下·最好能清楚的说明下·感谢不尽!~[/size] --------------------编程问答-------------------- 使用ini文件 --------------------编程问答-------------------- 我勒个去! --------------------编程问答-------------------- 我勒个去! --------------------编程问答-------------------- --------------------编程问答-------------------- 如1F所说,可以使用ini文件.也可以用词典
    Dim mDic 
    set mDic =createobject("Scripting.Dictionary")
    mDic.Add 诊断代码, 解释部分
    Debug.Print mDic.Item("15")

如果文字比较多,那就用个access文件存储,输入诊断代码的时候匹配出解释部分 --------------------编程问答--------------------
'诊断代码放在strKey,总内容通过strData传入,可以从文本文件读取
'调用范例:MsgBox getNote("21", strData)
Private Function getNote(strKey$, strData$) As String
    Dim reg As Object
    Dim matchs As Object, match As Object

    Set reg = CreateObject("vbscript.regExp")
    reg.Global = True
    reg.IgnoreCase = True
    reg.MultiLine = True
    reg.Pattern = "^" & strKey & " (.+)"
    Set matchs = reg.Execute(strData)
    For Each match In matchs
        getNote = match.SubMatches(0)
        Exit For
    Next
End Function
--------------------编程问答-------------------- 完整
Option Explicit

Private Sub Form_Load()
    Dim strData$
    strData = "15 测试开头64K的系统存储器。 第2通道计时器测试了一半;8254第2通道计时器即将完成测试。 第一个64DK RAM第5位故障。 " & vbCrLf & _
              "16 建立8259所用的中断矢量表。 第2通道计时器测试结束;8254第1通道计时器即将完成测试。 第一个64DK RAM第6位故障。 " & vbCrLf & _
              "17 调准视频输入/输出工作,若装有视频BIOS则启用。 第1通道计时器测试结束;8254第0通道计时器即将完成测试。 第一个64DK RAM第7位故障。" & vbCrLf & _
              "18 测试视频存储器,如果安装选用的视频BIOS通过,由可绕过。 第0通道计时器测试结束;即将开始更新存储器。 第一个64DK RAM第8位故障。" & vbCrLf & _
              "19 测试第1通道的中断控制器(8259)屏蔽位。 已开始更新存储器,接着将完成存储器的更新。 第一个64DK RAM第9位故障。 " & vbCrLf & _
              "1A 测试第2通道的中断控制器(8259)屏蔽位。 正在触发存储器更新线路,即将检查15微秒通/断时间。 第一个64DK RAM第10位故障。 " & vbCrLf & _
              "1B 测试CMOS电池电平。 完成存储器更新时间30微秒测试;即将开始基本的64K存储器测试。 第一个64DK RAM第11位故障。" & vbCrLf & _
              "1C 测试CMOS检查总和。第一个64DK RAM第12位故障。" & vbCrLf & _
              "1D 调定CMOS配置。 . 第一个64DK RAM第13位故障。" & vbCrLf & _
              "1E 测定系统存储器的大小,并且把它和CMOS值比较。 . 第一个64DK RAM第14位故障。" & vbCrLf & _
              "1F 测试64K存储器至最高640K。 . 第一个64DK RAM第15位故障" & vbCrLf & _
              "20 测量固定的8259中断位。 开始基本的64K存储器测试;即将测试地址线。 从属DMA寄存器测试正在进行或失灵。" & vbCrLf & _
              "21 维持不可屏蔽中断(NMI)位(奇偶性或输入/输出通道的检查)。 通过地址线测试;即将触发奇偶性。 主DMA寄存器测试正在进行或失灵。" & vbCrLf & _
              "22 测试8259的中断功能。 结束触发奇偶性;将开始串行数据读/写测试。 主中断屏蔽寄存器测试正在进行或失灵。" & vbCrLf & _
              "23 测试保护方式8086虚拟方式和8086页面方式。 基本的64K串行数据读/写测试正常;即将开始中断矢量初始化之前的任何调节。 从属中断屏蔽存器测试正在进行或失灵。" & vbCrLf & _
              "24 测定1MB以上的扩展存储器。 矢量初始化之前的任何调节完成,即将开始中断矢量的初始准备。 设置ES段地址寄存器注册表到内存高端。" & vbCrLf & _
              "25 测试除头一个64K之后的所有存储器。 完成中断矢量初始准备;将为旋转式断续开始读出8042的输入/输出端口。 装入中断矢量正在进行或失灵。" & vbCrLf & _
              "26 测试保护方式的例外情况。 读出8042的输入/输出端口;即将为旋转式断续开始使全局数据作初始准备。 开启A20地址线;使之参入寻址。" & vbCrLf & _
              "27 确定超高速缓冲存储器的控制或屏蔽RAM。 全1数据初始准备结束;接着将进行中断矢量之后的任何初始准备。 键盘控制器测试正在进行或失灵。" & vbCrLf & _
              "28 确定超高速缓冲存储器的控制或者特别的8042键盘控制器。 完成中断矢量之后的初始准备;即将调定单色方式。 CMOS电源故障/检查总和计算正在进行。"
              
    MsgBox getNote("21", strData)
End Sub

Private Function getNote(strKey$, strData$) As String
    Dim reg As Object
    Dim matchs As Object, match As Object

    Set reg = CreateObject("vbscript.regExp")
    reg.Global = True
    reg.IgnoreCase = True
    reg.MultiLine = True
    reg.Pattern = "^" & strKey & " (.+)"
    Set matchs = reg.Execute(strData)
    For Each match In matchs
        getNote = match.SubMatches(0)
        Exit For
    Next
End Function
补充:VB ,  VBA
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,