Ich habe ein Excel-Add-in in VBA geschrieben, die durch die verwendete Bereich eines Blattes iteriert und Zelle Werte manipuliert. Es ist ein einfaches Add-in, aber jetzt haben sich die Benutzeranforderungen geändert und ich möchte es in Visual Studio in C# entwickeln. Zu diesem Zweck habe ich mich mit VSTO beschäftigt, aber soweit ich es im Visual Studio verstehe, kann man AddIns für eine einzelne Version von Excel entwickeln. Ich muss Unterstützung für Excel 2010 und Excel 2013 geben. Was soll ich tun, um dieses Problem zu überwinden. Welche Visual Studio Version sollte ich verwenden?Excel-Add-In für Excel 2010 & Excel 2013 in Visual Studio
Antwort
Jede Version von Visual Studio von 2010 bis zur Gegenwart unterstützen sollte in der Lage seine VSTO-Add-In für Excel 2010 zu erstellen Ab Version 2012 auch für Office 2013. Welche Vorlagen in den späteren Versionen angezeigt werden, hängt ab von 1) der installierten Office-Version und 2) der beim Erstellen des Projekts ausgewählten Version von .NET Framework (4.0 für 2010; 4.5 für später). Weitere Informationen finden Sie auf dieser Seite: https://blogs.msdn.microsoft.com/vsto/2013/03/06/office-developer-tools-for-visual-studio-2012-now-available-with-office-2013-and-net-framework-4-5-support/
Beachten Sie, dass in der Entwicklungsumgebung nur eine Office-Version installiert sein sollte.
Wenn möglich, sollten Sie das Add-In für Excel 2010 entwickeln. Ein für eine ältere Version entwickeltes Add-In wird für eine neuere Version ausgeführt, ohne dass Sie zusätzlich etwas tun müssen - vorausgesetzt, Microsoft hat keine Änderungen vorgenommen zu den Teilen des Objektmodells, das Sie verwenden, die es "brechen". Da Microsoft der Abwärtskompatibilität besondere Aufmerksamkeit widmet, ist dies normalerweise kein Problem, aber gründliche Tests sind wichtig. Es ist nicht erforderlich, die Installation für die Installation in einer neueren Version von Office neu zu erstellen oder anderweitig zu ändern.
Ein wichtiger Grund zur Entwicklung gegen die ältere Version ist, dass Vorwärtskompatibilität nicht unterstützt wird. Mit anderen Worten, wenn Sie etwas in der neueren Version verwenden, die nicht in der älteren Version vorhanden ist, wird dieser Code fehlschlagen.
Die VSTO-Funktion wird die Referenzen, die für ältere PIAs erstellt wurden, automatisch auf die neueren für eine neuere Version von Office umstellen. Die Rückseite ist nicht der Fall.
Wenn es aus irgendeinem Grund nicht möglich ist, die ältere Version zu verwenden, können Sie die Eigenschaft "Embed Interop types" einer Referenz verwenden, um die PIA-Informationen einzubetten, solange Sie .NET Framework 4.0 (oder höher) verwenden in Ihrem Projekt, so dass es mit Ihrer Lösung reist, anstatt die PIAs zu referenzieren, die in den GAC und installiert sind, macht sie versionsunabhängig. In der Theorie ist das in Ordnung, erfordert aber sehr gründliches und sorgfältiges Testen, da - neben dem Problem der Vorwärtskompatibilität - sich die tatsächlich eingebetteten Informationen nicht immer korrekt verhalten.
Sie müssen Visual Studio 2013 für VSTO Version 13 installieren, die Excel 2013 unterstützen, aber Sie können Excel 2010 unterstützen, indem Sie die Installer-Datei aus der Anwendung erstellen. und es gibt keine andere Möglichkeit, zwei verschiedene Version von der Code-Basis zur gleichen Zeit
Dank
Sie meinen, ich muss zwei verschiedene Installer für Excel2010 & 2013 aus demselben Projekt erstellen, oder ich muss zwei verschiedene Projekte für zwei Excel-Versionen verwalten? –
Ja, Sie können zwei verschiedene Installer vom gleichen Projekt erstellen –
- 1. Erstellen ExcelAddin in Visual Studio 2010
- 2. Visual Studio 2013 dunkles Thema für Visual Studio 2010?
- 3. VBA-Code funktioniert in Excel 2010, aber nicht Excel 2013
- 4. Öffnen von Visual Studio 2010-Lösung In Visual Studio 2013
- 5. Visual Studio 2013, TFS 2010 - 0x80070570
- 6. Visual Studio C# Excel-Bibliotheken
- 7. Verwenden von Excel 2010 mit Visual FOXPRO
- 8. Intellitest für Visual Studio 2013
- 9. Ist die Excel 2013-Plug-in-API abwärtskompatibel zu Excel 2003-2010?
- 10. Excel VBA-Code in Visual Studio schreiben
- 11. Laufzeitfehler 1004 Excel 2013
- 12. Excel 2013 stürzt ab
- 13. EXCEL 2013 VBA Filterproblem
- 14. COUNTIF() in Excel (Office 2013)
- 15. Wie erstellt man eine MSI-Datei für eine Visual Studio 2010-Lösung ohne Visual Studio 2010?
- 16. Gemeinsame Zeichenfolgen in Excel 2010
- 17. Visual Studio 2013 VSTO erstellt kein Word 2010-Projekt
- 18. Excel 2010: VLOOKUP Funktion
- 19. Excel 2010 Userforms vba
- 20. Visual Studio 2013 CSS-Umriss
- 21. Bereitstellen einer Visual Studio Excel 2007-Vorlage
- 22. F # und Excel-Integration für .NET 4.0 (Visual Studio 2010 Beta 1)
- 23. Hinzufügen einer benutzerdefinierten Funktion zu Visual Studio Excel-Add-in
- 24. Visual Studio (2010, 2013, 2015) automatisch an iexplore.exe anhängen
- 25. Wie Visual Studio 2010 + 2012 + 2013 koexistieren können?
- 26. Speicherprofilerstellung in Visual Studio 2013
- 27. Excel-Add-in MATLAB Bibliothek Compiler
- 28. Excel 2013 verkettete Dezimalzahlen reduzieren
- 29. FTP Publish Fehler in Visual Studio 2013
- 30. Visual Studio 2010 Klassendiagramm
Vielen Dank für eine so detaillierte Antwort. –