Private module

J

Jean-Baptiste

Guest
Bonjour à tous, bonjour le forum,

Merci à Philippe de m'avoir répondu, mais comment fait on pour placer cette macro dans un private Module.

Voici une solution par Macro évènementielle à placer dans le Private Module de la Feuille en Question (Pas un module standard).

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Dim Ligne As Integer
Ligne = Target.Row

If Not Application.Intersect(Target, Range("C:C")) Is Nothing Then
If Range("B" & Ligne) = "" Then
MsgBox "Attention la cellule " & Range("B" & Ligne) & " est vide", vbCritical
End If
End If


End Sub

Merci pour vos réponses
 
@

@+Thierry

Guest
Bonjour Jean Batiste, le Forum

Tiens cette phrase écrite textuellement : "Voici une solution par Macro évènementielle à placer dans le Private Module de la Feuille en Question (Pas un module standard) me dit quelque chose... y aurait-il eu plagia !! lol

Sinon je n'ai pas fait le GIF animé pour ce cas de figure, mais celui du Private Module du WorkBook=> "ThisWorkBook"...

En fait en suivant les mêmes instructions, mais en double cliquant sur :
=> Feuil1 (Feuil1)

Tu auras le Private Module de la Feuille en Question ...



Bonne Journée
@+Thierry
 
D

Dan

Guest
Re: Private module - Initiation

Bonjour Jean Baptiste, Thierry, Le forum,

L'intervention de notre sympathique ami Thierry m'amène ici pour suggérer à tous de conserver cette excellente explication au cas où vous souhaiteriez débuter les macros événementielles en VBA.

Bon ap

@+ Dan
 
@

@+Thierry

Guest
Re Bonjour Jean Batiste, Dan, le Forum

T'inquiète pas il n'y a pas de mal pour le nom.

Pour ton problème, je pense que tu dois appliquer à la lettre mon GIF animé. Hors celui-ci est prévu pour une macro évènementielle d'ouverture de classeur.

Pour que ce code fonctionne :

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Dim Ligne As Integer
Ligne = Target.Row

   If Not Application.Intersect(Target, Range("C:C")) Is Nothing Then
      If Range("B" & Ligne) = "" Then
         MsgBox "Attention la cellule " & Range("B" & Ligne) & " est vide", vbCritical
      End If
   End If

End Sub

Il doit être placé NON PAS dans le module "ThisWorkBook" MAIS dans le module de la Feuille que tu veux (dans le GIF tu aurais soit Feuil1 ou soit Feuil2)

Il te suffit de DOUBLE-CLIQUER sur la feuille désirée...

Le reste de la procédure est identique que le Gif, sauf que tu n'a qu'à copier/coller ce code...

Sinon une solution ALTERNATIVE :

Depuis Excel, tu te places sur l'onglet de la feuille voulue et tu fais un CLICK-DROIT et tu sélectionnes dans le menu contextuel "Voir Codes" tu arriveras au même endroit dans le module pour ensuite copier/coller ce code...

J'espère que c'est assez clair

Bon Aprèm
@+Thierry
 

Discussions similaires

Réponses
29
Affichages
996
Réponses
1
Affichages
261

Statistiques des forums

Discussions
312 396
Messages
2 088 055
Membres
103 709
dernier inscrit
FrrankX