Gibt es eine Möglichkeit zum Satz von Sucheinstellungen für MS Office (2003) für nicht Englisch charectars

StackOverflow https://stackoverflow.com/questions/1781538

  •  21-09-2019
  •  | 
  •  

Frage

sagen, es gibt eine Tabelle oder eine Tabelle in MS-Zugang, die nicht englische Zeichen (diakritische Zeichen) wie à, á, â, ã, ä, å, æ, ç, è, é, ê, ë enthält

Da dieses System von englischen Sprechern verwendet wird, der Endbenutzer, wenn für Werte suchen, kann nicht erraten, ob bestimmte Worte oder Namen in der englischen Fassung eingetragen wurden oder in der Originalversion.

Das heißt, días könnte ursprünglich in die databse als días oder dias eingegeben werden. coñac könnte als coñac oder conac eingegeben werden. In der Tat werden manchmal Daten auf diese Weise eingegeben und manchmal die andere Art und Weise.

Die Frage ist, ob es einen Weg gibt, diese Suchoptionen zu setzen, so integriertem Büro Suchmechanismus (Strg + f) würde días finden, wenn dias geliefert wird.

Wenn es nicht der Fall, ich würde gerne hören, was Ihr Ansatz wäre, dieses Problem zu lösen.

War es hilfreich?

Lösung

GUI Anpassungsverhalten des Suchdialogs in Office-Anwendungen ist anpassbar nicht. Aber wenn ich an deiner Stelle wäre, hier ist, wie ich das Problem lösen würde:

Zuerst müssen Sie einige .NET-Code benötigen, der Akzent unempfindlichen Suche durchführt. Je nachdem, welche Sprache Sie am besten gefällt, ist hier sowohl ein VB und C # Probe. Der Kern dieser wird mit dem CompareInfo.IndexOf Verfahren einen Parametersatz unter Verwendung CompareOptions CompareOptions.IgnoreNonSpace . Dies ist ein Akzent unempfindliche Suche.

Als nächstes müssen Sie den Code aus dem Office-Anwendung aufzurufen. Wie Sie Code in Variiert von app-- zum Beispiel stecken, sind hier zeigen Blog-Posts, wie dies zu tun von Excel und Zugang .

Dann müssen Sie diese Anrufe um Code und UI wickeln, die eine Suche simuliert und ersetzen. Dies wiederum wird in jeder App unterschiedlich sein. Zum Beispiel in Excel Sie werde Schleife durch alle Zellen in dem aktuellen Arbeitsblatt und das Aussehen für die Spiele der Code verwendet wird.

Schließlich würden Sie wollen, dass Code auf eine Schaltfläche in der Symbolleiste zur Karte oder andere Art und Weise, Ihren Code zu erhalten aufgerufen.

Wie auch immer, hofft, das ist genug Informationen, um Ihnen den Einstieg erleichtern. Hier ist der Kern .NET-Code in jedem VB oder C # Akzent unempfindliche Spiele zu tun:

VB

Module Module1
    Sub Main()
        ' returns: 3
        Dim pos As Integer = FindIgnoreDiacritics("àcçëñt-énäblêd", "en")
    End Sub
    Function FindIgnoreDiacritics(ByVal lookIn As String, ByVal lookFor As String) As Integer
        FindIgnoreDiacritics = System.Globalization.CultureInfo.InvariantCulture.CompareInfo.IndexOf(lookIn, lookFor, System.Globalization.CompareOptions.IgnoreNonSpace Or System.Globalization.CompareOptions.IgnoreCase)
    End Function
End Module

C #

class Program
{
    static void Main(string[] args)
    {
        // returns: 3
        int pos = FindIgnoreDiacritics("àcçëñt-énäblêd", "en");
    }
    static int FindIgnoreDiacritics(string lookIn, string lookFor)
    {
        return System.Globalization.CultureInfo.InvariantCulture.CompareInfo.IndexOf(lookIn, lookFor,
            System.Globalization.CompareOptions.IgnoreNonSpace | System.Globalization.CompareOptions.IgnoreCase);
    }
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top