Office中国论坛/Access中国论坛

标题: [源码]关闭所有窗体的自动纠正功能 [打印本页]

作者: tmtony    时间: 2012-12-13 08:52
标题: [源码]关闭所有窗体的自动纠正功能


  1. '试过以下方法均不行,经测试,access没有一个方法设置这个关闭功能
  2. '只能关闭 选项里的 其它 自动更正功能,但对输入替换没有效果




  3. '(1)
  4. 'Application.SetOption "Perform Name AutoCorrect", True ' False
  5. 'Application.SetOption "Log Name AutoCorrect Changes", True ' False
  6. 'Application.SetOption "Track Name AutoCorrect Info", True ' False

  7. 'Application.SetOption "Database Explorer Click Behavior", 0

  8. '(2)
  9. 'SetOption "执行名称自动更正", 0



  10. '(3)
  11. '名称自动纠正在 option里
  12. '而这个设置在 "工具" --- 自动更正选项  我找到代码来打开它,但无法自动设置
  13. 'docmd.RunCommand acCmdAutoCorrect  可打开之,但无法设置里面的值




  14. '(4) 只有以下方法是真正有效的

  15. '----------------------------------
  16. '使用方法,将这个函数 复制到任何一个或新的模块中
  17. '保存整个MDB,然后按alt+F11进入代码状态
  18. '再按ctr+G 进入调试窗体,在调试窗体中 输入 tonySetAutoCorrectFalse
  19. '按回车执行即可

  20. 'tmtony 修改于 2012/08/20

  21. Public Sub tonySetAutoCorrectFalse()
  22. '要先确保你的系统中有引用DAO
  23. '作用,设置所有窗体中的所有文本框及组合框控件
  24. '自动关闭自动纠正功能

  25. '
  26. '例如:
  27. '1.在文本框输入hda  自动会变成 had 这是自动纠正 将其改为 英文单词had了
  28. '2.在组合框 如果下拉列表中有 b.l.c.等这样的内容,在组合框 输入b字, 整个内容都会跳出来,而不是渐进式匹配



  29. Dim MyDb As DAO.Database

  30. Dim frm As Document

  31. Dim ctr As Control

  32. Dim strFormName As String

  33.     Set MyDb = CurrentDb()
  34.    
  35.     For Each frm In MyDb.Containers("Forms").Documents
  36.    
  37.         strFormName = frm.Name
  38.         
  39.         DoCmd.OpenForm strFormName, acDesign
  40.         
  41.         For Each ctr In Forms(strFormName).Controls
  42.         
  43.             Select Case ctr.ControlType
  44.             
  45.                 Case acTextBox, acComboBox
  46.                
  47.                     If ctr.AllowAutoCorrect = True Then
  48.                     
  49.                          ctr.AllowAutoCorrect = False
  50.                         
  51.                     End If
  52.             End Select
  53.             
  54.         Next ctr
  55.         
  56.         DoCmd.Close acForm, strFormName, acSaveYes
  57.         
  58.     Next frm

  59. End Sub

复制代码

作者: xuwenning    时间: 2012-12-13 09:41
收下
谢谢分享
作者: mini520    时间: 2012-12-13 13:42
感谢楼主的 分享啊!!哈哈!
作者: yanwei82123300    时间: 2012-12-13 16:27
感谢楼主的 分享啊!!哈哈!




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3