Visual basic avec mac

Severine33130 Messages postés 39 Date d'inscription dimanche 28 juin 2020 Statut Membre Dernière intervention 25 avril 2024 - 22 mars 2024 à 13:34
Francis_2023 Messages postés 121 Date d'inscription mardi 18 juillet 2023 Statut Membre Dernière intervention 23 avril 2024 - 29 mars 2024 à 23:32

Bonjour,

J'ai besoin de créer une macro sous excel pour mettre la ligne sur laquelle je travaille en surveillance (repérage visuel), avec un mac, mais je ne trouve pas comment il faut faire car quand je veut créer ma macro sous WORKSHEET ça me dit "cette variable utilise un type automation non géré par Visual Basic"

Est-ce que quelqu'un aurait la solution ?

Merci à toutes et tous.
Séverine

A voir également:

8 réponses

Aliboron Martin Messages postés 3440 Date d'inscription samedi 1 janvier 2011 Statut Contributeur Dernière intervention 18 avril 2024 927
23 mars 2024 à 00:55

Est-ce que tu peux indiquer ce que tu utilises comme commande qui te renvoie cette erreur ? Précise aussi ce que tu veux faire exactement.

A priori, une macro contextuelle de type Worksheet_Change, etc. devrait correspondre à ce que tu cherches (si j'ai bien compris ta demande)...


0
Severine33130 Messages postés 39 Date d'inscription dimanche 28 juin 2020 Statut Membre Dernière intervention 25 avril 2024
23 mars 2024 à 10:17

Bonjour,

Dans de grand tableaux (avec beaucoup de colonnes), je voudrais que la ligne que je sélectionne se mette en couleur quand je clique dessus.

J'ai réussi à le faire au bureau (je travaille sous windows) avec la mise en forme conditionnelle =ligne()=cellule("ligne") + macro worksheet : application.ScreenUpdating=true, mais en voulant la reproduire chez moi (je travaille sous mac) je n'y arrive plus car ce n'est pas présenté de la même manière.

0
Aliboron Martin Messages postés 3440 Date d'inscription samedi 1 janvier 2011 Statut Contributeur Dernière intervention 18 avril 2024 927
23 mars 2024 à 15:03

Est-ce que tu peux décrire plus précisément comment est construite cette macro. Chez moi, ça semble fonctionner comme tu le décris avec ces lignes (dans la page de code de la feuille concernée) :

Private Sub Worksheet_Change(ByVal Target As Range)

Application.ScreenUpdating = True

End Sub

Quand je valide une saisie avec la touche "Entrée", la ligne est colorée (et la précédente redevient blanche)...

0
Severine33130 Messages postés 39 Date d'inscription dimanche 28 juin 2020 Statut Membre Dernière intervention 25 avril 2024
23 mars 2024 à 15:41

1- Je sélectionne une cellule dans mon tableau

2- CRTL A pour sélectionner TOUT le tableau

3- Mise en forme conditionnelle avec la formule =ligne()=cellule("ligne") en rouge (par exemple)

4- sur la feuille sur laquelle je travaille, je vais sur Développeur / Visual Basic

5- Sur le côté gauche, il y a PROJET-VBProject

6- je clique sur la feuille qui m'intéresse

7-dans la fenêtre du milieu, il y a d'un coté Général ou worksheet (à gauche de la fenêtre) et de l'autre déclaration (à droite)

8- dès que je sélection worksheet, j'ai une fenêtre qui apparaît qui dit "Cette variable utilise un type Automation non géré par Visual Basic"

Du coup je ne peux rien faire de plus

0
Aliboron Martin Messages postés 3440 Date d'inscription samedi 1 janvier 2011 Statut Contributeur Dernière intervention 18 avril 2024 927
23 mars 2024 à 19:11

Curieux. Est-ce que tu as bien double-cliqué sur l'icône de la feuille concernée pour "ouvrir" la page de code :

De quelle version d'Excel est-il question (16.83) ? Sur quelle version de macOS ?


0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Severine33130 Messages postés 39 Date d'inscription dimanche 28 juin 2020 Statut Membre Dernière intervention 25 avril 2024
24 mars 2024 à 13:46

Bonjour,

Ci-joint, un impr'écran de la fenêtre qui s'ouvre :

https://www.cjoint.com/c/NCymR5ilgzW

Mon mac est bloqué à Catalina version 10.15.7.

Quant à Excel, c'est la version 16.66.1

Mais normalement ça ne devrait pas impacté la saisie des macros ?????

0
Francis_2023 Messages postés 121 Date d'inscription mardi 18 juillet 2023 Statut Membre Dernière intervention 23 avril 2024 17
24 mars 2024 à 19:18

Bonjour,

Perso, je n'ai pas testé, mais j'ai trouvé cette video tuto :

https://www.youtube.com/watch?v=BxGe1kJxhjY

Si j'ai bien compris la question...

Cordialement. 


0
Aliboron Martin Messages postés 3440 Date d'inscription samedi 1 janvier 2011 Statut Contributeur Dernière intervention 18 avril 2024 927
24 mars 2024 à 19:19

En effet, pour Catalina, c'est bien la version 16.66.1. Et ça ne devrait pas avoir d'incidence sur le fonctionnement de base des macros (chez moi, ça fonctionne aussi bien sous Mojave avec Excel 16.54 qu'avec Monterey et Excel 16.83).

Après avoir quitté Excel, positionne-toi sur le dossier ~/Bibliothèque/Containers et supprime le dossier com.microsoft. Excel qui s'y trouve :

Avec un peu de chance ça suffira à remettre les choses en ordre.


0
Francis_2023 Messages postés 121 Date d'inscription mardi 18 juillet 2023 Statut Membre Dernière intervention 23 avril 2024 17
29 mars 2024 à 16:13

Bonjour,

Je viens de faire plusieurs tests, et j'ai eu exactement les mêmes échecs et messages d'erreur que Séverine dans un premier temps. Puis, après plusieurs différents tests, j'ai finalement obtenu le résultat souhaité : 

avec ce script :

Le simple fait de cliquer dans une cellule, provoque alors la mise en couleur de la ligne entière.

Cela sous Sonoma, avec Excel 16.83...

Si ça peut aider.. 

@+ 

0
Sev33130 > Francis_2023 Messages postés 121 Date d'inscription mardi 18 juillet 2023 Statut Membre Dernière intervention 23 avril 2024
29 mars 2024 à 21:37

Bonsoir,

Bon ben je dois être maudite ..... ça ne fonctionne pas.

Merci pour votre aide.

Tans pis, je laisse tomber.

Cordialement.

0
Francis_2023 Messages postés 121 Date d'inscription mardi 18 juillet 2023 Statut Membre Dernière intervention 23 avril 2024 17
Modifié le 29 mars 2024 à 23:43

Bonsoir Séverine, 

Je pense qu'il s'agit de la manière de procéder, l'ordre ou la manière...

Je viens de refaire le test, et cela a fonctionné au premier essai. 

Ce que je viens de re-faire pour nouveau test, dans l'ordre :

- Lancer Excel

- Nouveau document

- Sélection d'un groupe de case

- Insertion d'un tableau

- misen forme conditionelle / Classique  / Utiliser une formule = votre formule, soit 

=ligne()=cellule("ligne") en rouge

- menu Développeur / Visual Basic

- sélection de la feuille en cours dans la fenêtre Visual basic

- coller ceci dans la page de code 

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Set zone = Intersect(Target.EntireRow, Target.CurrentRegion)

Application.ScreenUpdating = True

End Sub

- Retour sur la feuille pour test = ça fonctionne 

- Enregistrer sous...

- Choix du type de fichier : xlsm (fichier prenant en charge les macros)

- Quitter Excel

- Ouverture du fichier pour test avec activation des macros... 

Ça fonctionne...


0