使用拼写检查(MS Access)时使用VBA切换字典

问题描述 投票:2回答:3

我具有此VBA功能:退出字段时,它将自动启动拼写检查器。但是,我有英语字段和其他法语字段,因此我正在寻找一种为每个字段设置词典语言的方法,以便Access知道要使用哪个词典/语法检查器。

例如,您将如何在此代码中包含法语?

Private Sub Field_Exit(Cancel As Integer)
       Dim strSpell
       strSpell = Field
       If IsNull(Len(strSpell)) Or Len(strSpell) = 0 Then
          Exit Sub
       End If
       With Field
           .SetFocus
           .SelStart = 0
           .SelLength = Len(strSpell)
       End With
       DoCmd.SetWarnings False
       DoCmd.RunCommand acCmdSpelling
       DoCmd.SetWarnings True
    End Sub
vba ms-access access-vba spell-checking ms-access-2013
3个回答
4
投票

拖曳互联网想出了这个:

Application.SetOption "Spelling dictionary language", xxxx

其中xxxx是此处列出的常数之一:http://msdn.microsoft.com/en-us/library/aa432635%28v=office.12%29.aspx

在需要时应该能够来回翻转开关。


1
投票

据我所知,您不能这样做。

词典是在Windows设置中指定的。我可以想象有一种API方法可以更改此设置,但是我发现最接近的是this page大约是.CheckSpelling(当指定的字典不匹配时,它可以让您指定备用字典)。


0
投票

我知道这与Access有关,但是为了以后为Excel用户参考,您实际上可以使用VBA更改语言设置。示例如下所示:

Application.SpellingOptions.DictLang = msoLanguageIDEnglishCanadian
Application.SpellingOptions.DictLang = msoLanguageIDFrenchCanadian
© www.soinside.com 2019 - 2024. All rights reserved.