VBA (Excel) Dictionnaire sur Mac?
J'ai un fichier Excel VBA projet qui fait un usage intensif de Windows Scripting Dictionnaire objets. J'ai eu récemment un utilisateur de tenter de l'utiliser sur un Mac et a reçu le message d'erreur suivant:
Compile Error: Can't find project or library
Qui est le résultat de l'utilisation de la Tools > References > Microsoft Scripting Runtime
bibliothèque.
Ma question est, est-il un moyen de faire ce travail sur un Mac?
Voici les 3 cas, je pense comme solutions possibles:
- Utilisez un Mac plugin qui permet l'utilisation de Dictionnaires sur Mac (mon option préférée si l'un existe)
- Faire une sorte de variable commutateur comme suit:
isMac = CheckIfMac If isMac Then ' Change dictionary variable to some other data type that is Mac friendly and provides the same functionality End If
- Écrire 2 complètement séparé des routines de faire la même chose (s'il vous plaît laissez ce n'est pas ce qui doit arriver):
isMac = CheckIfMac If isMac Then DoTheMacRoutine Else DoTheWindowsRoutine End If
Si vous avez besoin d'être multi-plateforme, vous pouvez remplacer le Script.Dictionnaire avec une classe personnalisée: par exemple, les sysmod.wordpress.com/2011/11/02/...
Faire qu'une réponse et je vais l'accepter - que exemple a travaillé comme un charme. Devrait probablement copier/coller de certains si pas tous le code (il y a 2 fichiers, pas trop gros) dans le cas où le lien se casse pour les téléspectateurs peuvent encore en faire usage.
Faire qu'une réponse et je vais l'accepter - que exemple a travaillé comme un charme. Devrait probablement copier/coller de certains si pas tous le code (il y a 2 fichiers, pas trop gros) dans le cas où le lien se casse pour les téléspectateurs peuvent encore en faire usage.
OriginalL'auteur user1205577 | 2013-11-08
Vous devez vous connecter pour publier un commentaire.
Tirant la Réponse dans les commentaires pour prévenir la pourriture des liens.
Patrick O'Beirne @ sysmod a écrit une classe qui traite de cette question.
Assurez-vous d'arrêter par Patirk Blog pour vous dire merci! Il ya aussi une chance qu'il a une version plus récente.
l'enregistrer comme un fichier texte nommé KeyValuePair.cls et les importer dans Excel
l'enregistrer comme un fichier texte nommé Dictionnaire.cls et les importer dans excel
Merci, je déteste lien de la pourriture. La question exactement ce que j'ai besoin de demander. Il est décevant d'avoir à creuser dans les commentaires. J'espère que cela sauve quelqu'un d'autre peu de temps.
Patirk de la mise en œuvre ne fonctionne pas pour MS Office 2016 sur Mac. J'ai fait de l'utilisation d'une autre application. Veuillez voir dans ma réponse.
Comment puis-je l'utiliser? Merci... Tout comment serait génial
OriginalL'auteur Frobbit
Patirk de la mise en œuvre ne fonctionne pas pour MS Office 2016 sur Mac. J'ai fait usage de la mise en œuvre par Tim Hall.
Voici le lien: https://github.com/VBA-tools/VBA-Dictionary
Également importer des cls fichiers dans Excel ne fonctionne pas dans MS Office, en 2016, sur Mac comme de septembre 2017. J'ai donc dû créer un module de classe et de copier et de coller le contenu du Dictionnaire.cls manuellement dans ce module, tout en supprimant des méta-informations à partir du Dictionnaire.cls tels que
VERSION 1.0 CLASS
,BEGIN
,END
,Attribute
.OriginalL'auteur Alexander Poleschuk
J'ai enfin mis à jour les fichiers pour Excel 2016 pour Mac.
http://www.sysmod.com/Dictionary.zip
(capital D dans le Dictionnaire)
Décompressez ce et importer les fichiers de classe (testé dans Excel 2016 pour Mac 16.13 Construire 424, 27-Apr-2018)
Mon rapport de bug à MS est à answers.microsoft.com
Excel 16.13 pour Mac Défini par l'Utilisateur de la Classe passée en paramètre toutes les propriétés sont Null
Laissez-moi savoir si j'ai raté quelque chose!
Bonne chance,
Patrick O''Beirne
OriginalL'auteur sysmod