Ich möchte Excel über .net interop zugreifen. Ich muss eine andere Region verwenden, möchte aber nicht die Region für das gesamte Betriebssystem ändern. Gibt es eine Möglichkeit, dies programmgesteuert anzugeben? Die LanguageSettings-Eigenschaft der ApplicationClass ist schreibgeschützt.Geben Sie Region und Kultur für Microsoft Office Interop an
Antwort
Es könnte für Ihre Anwendung gefährlich sein. In meinem Programm, als OS-Sprachversion war anders als Office-Sprachversion stürzte dann Programm abgestürzt, weil Office versucht, automatisch Language Pack auszuführen. Komisches Verhalten.
können Sie die aktuellen Threads Kultur gesetzt:
System.Threading.Thread.CurrentThread.CurrentCulture = new CultureInfo("en-us");
Weiterhin ist/war in Excel einen Fehler, wenn es notwendig war, en-US-Kultur angeben Interop zu verwenden. Es hängt von der Excel-Konfiguration ab (ob Updates angewendet wurden oder nicht)
Ihre OS-Kultur kann für ein Beispiel Russisch sein, aber wenn Sie die Kultur des Threads explizit auf en-US setzen, wird alles in Ordnung sein.
Scheint nicht zu funktionieren. –
Wenn es um die Separatoren ist, können Sie es auf diese Weise tun:
var ci = new CultureInfo(locale);
var excelApp = new Microsoft.Office.Interop.Exce.Application();
excelApp.UseSystemSeparators = false;
excelApp.DecimalSeparator = ci.NumberFormat.NumberDecimalSeparator;
excelApp.ThousandsSeparator = ci.NumberFormat.NumberGroupSeparator;
- 1. .NET Office-Interop mit Version unabhängige Office
- 2. FSharp und Microsoft Office PIA
- 3. Entwickeln für Microsoft Office 2013 mit Microsoft Office 2016
- 4. verschmelzen Zellen mit gleichen Werten in Microsoft Office Interop Excel
- 5. Warum geben Sie Kultur in String Umwandlung
- 6. Office Interop-Konstruktor mit Argumenten
- 7. Wie verwenden Sie zwei verschiedene Microsoft Interop-Assemblys in einem Projekt?
- 8. Office Interop mit 64bit Windows in ASP.NET
- 9. Microsoft Office-Anpassungs Installateur Fehler
- 10. Debuggen langsamer Office-Anwendungs-Interop-Konstruktor?
- 11. So geben Sie die Zeit für Daten in der bestimmten Region an
- 12. C# 4.0 dynamische Office Interop-Leistung
- 13. Office Interop Excel DisplayAlerts = false funktioniert nicht für Aktivierung Popup
- 14. Visual Studio 2008 Office-Interop 2003 gegenüber 2007
- 15. Wie können Sie mehrere Versionen von Microsoft Office optimal ausführen?
- 16. Geben Sie ControlTemplate für ItemsControl.ItemContainerStyle an
- 17. Erhalten Sie verschiedene Formatabschnitte in Microsoft Publisher über Interop
- 18. Verwenden der Office-Interop für Word und Outlook 2007 in VB.NET
- 19. Parse Microsoft Office-Dateien in Node.JS
- 20. Office PIA und .NET Framework-Versionskompatibilität
- 21. Filling Felder in Word verwenden C# und Microsoft Word Interop
- 22. Android - Microsoft Office-Viewer in meinem app
- 23. So verwenden Sie das Automatisierungsobjektmodell von Microsoft Office-Paketen (Word, Excel usw.) in "plain" COM/ActiveX
- 24. Office 365 APIs Microsoft Graph-Authentifizierung fehlgeschlagen
- 25. Fehler beim Initialisieren von Microsoft Excel Interop (64-Bit)
- 26. Geben Sie TypeScript-Ausgabedateinamensformat an
- 27. den Wert für MS Office Interop Konstanten oben schauen, anstatt hart sie
- 28. Right Access Token für Microsoft Graph API/Office Planner-Daten
- 29. Verständnis von Microsoft API-Antwort für Office 365
- 30. Benutzerdefinierte Kultur für kundenspezifische Wortwahl?
Ja „Altes Format oder ungültige Typbibliothek“. Ich denke ein Language Interface Pack würde funktionieren, aber Microsoft berechnet $ für meine gewünschte Sprache. –