Articles of vba

Excel 2010 64 bits ne peut pas créer d’object .net

J’ai une bibliothèque de classes simple que j’utilise dans Excel. Voici une simplification de ma classe … using System; using System.Runtime.InteropServices; namespace SimpleLibrary { [ComVisible(true)] public interface ISixGenerator { int Six(); } public class SixGenerator : ISixGenerator { public int Six() { return 6; } } } Dans Excel 2007, je créerais un classeur prenant […]

OpenXML SDK Injecter VBA dans un classeur Excel

Je peux réussir à injecter un morceau de code VBA dans un classeur Excel généré, mais ce que j’essaie de faire, c’est d’utiliser l’événement Workbook_Open () afin que le code VBA s’exécute à l’ouverture du fichier. J’ajoute le sous-object à l’object “ThisWorkbook” dans mon fichier de modèle xlsm. J’utilise ensuite l’outil de productivité openxml pour […]

COM Interop: que dois-je faire pour qu’une propriété C # puisse être utilisée en tant que VARIANT de VBA

Dites que j’ai un DateTime? Nullable C # DateTime? propriété devant être utilisée par VBA via COM. public DateTime? TestDate { get ; set; } Malheureusement, Nullables ne sont pas visibles via COM, je voudrais donc que la propriété retourne quelque chose qui sera considéré comme une variante de VBA. Malheureusement, je ne sais pas […]

VBA ne peut pas trouver le point d’entrée dll C #

Je crée une dll en C # qui exécute une simulation lorsqu’une seule fonction runSimulation () est appelée. Cette dll doit être appelée à partir de VBA, car certaines valeurs de parameters sont données en entrée dans Excel. C’est le code que j’utilise. C #: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; […]

Extrait de code C # nécessaire pour répliquer l’opérateur VBA Like

Je suis en train de convertir du code VBA contenant l’opérateur LIKE, comme dans dim sToken as Ssortingng if sToken Like “(*,*)” then … Dans tous les cas, les modèles utilisent uniquement le caractère générique * qui correspond à n’importe quelle chaîne (y compris la chaîne vide). L’opérateur VBA Like ne donne qu’un résultat vrai […]

Toutes les combinaisons possibles d’un tableau 2D

Je souhaite générer toutes les combinaisons possibles à partir d’un tableau 2D [mxn], à l’exception du premier élément de chaque tableau. Cet élément représentera le type indiquant les éléments restants. Par exemple, si j’ai un tableau shirts[][] = { {“colour”, “red”, “blue”, “green”, “yellow”}, {“cloth”, “cotton”, “poly”, “silk”}, {“type”, “full”, “half”} }; Le résultat souhaité […]

Impossible d’instancier un object COM écrit en C # à partir de VBA (VB6 ok)

En utilisant VS 2008, voici mon object COM using System; using System.Collections.Generic; using System.Text; using System.Runtime.InteropServices; using System.Windows.Forms; namespace TestCom { [Guid(“9E5E5FB2-219D-4ee7-AB27-E4DBED8E123E”)] [ClassInterface(ClassInterfaceType.AutoDual)] [ProgId(“Test9.COMINT”)] public class TestComClass { public void Init(ssortingng userid, ssortingng password) { MessageBox.Show(ssortingng.Format(“{0}/{1}”, userid, password)); } } } Si je construis cela et l’enregistre sur une machine de production comme suit REGASM […]

Erreurs lors de l’appel de certaines macros Excel VBA à partir de C #

Je me débattais et je cherchais vainement ce problème … J’ai quelques macros de test qui fonctionnent parfaitement lorsqu’elles sont exécutées à partir d’Excel, mais échouent ou ne fonctionnent pas lorsqu’elles sont appelées à partir de C #, en utilisant l’interopérabilité … J’utilise MS Visual Studio 2012 (sous Windows 7 64 bits) pour créer une […]

VSTO dans VBA: AddIn.Object ne renvoie parfois rien (null)

Donné: Un complément VSTO Un override object RequestComAddInAutomationService() qui renvoie une instance d’une classe appelée Facade dans mon scénario. Une macro VBA dans Excel 2007 qui accède à AddIn.Object pour obtenir la façade et l’utilise. Beaucoup de fois où cela fonctionne parfaitement bien. Quelques fois où, à l’improviste, cela ne semble pas fonctionner. Mise à […]

Le projet Excel VBA n’est pas fermé

J’ai un add-in COM dans lequel je gère des événements Excel. Je clique sur Alt F11 pour afficher le projet VBA lié à Excel. Toutefois, lorsque je ferme le classeur, le projet Excel VBA dans l’explorateur de projets n’est pas également fermé. Il se ferme normalement lorsque mon complément COM n’est pas installé. Que se […]