Excel se bloque à chaque fois

Bonjour tout le monde,

Je suis nouveau dans ce monde de VBA

J'ai donc essayé de créer une marco qui va ma permettre de mettre une date à la colonne A à chaque fois qu'une donnée est entré aux cellules de la colonne B

Le problème c'est que après la deuxième entrée le fichier se bloque complètement

Qui ce que je dois ajouter comme code pour permettre à la macro de s’exécuter que pour la cellule ou la modification est faite

Merci !!!

8template.xlsm (17.14 Ko)

Bonjour Linkon et

Normal, erreur de débutant, on l'a tous faites

Voici le code qui évitera la boucle infinie et donc plantage d'Excel

' Cette procédure s'exécute à chaque changement d'une cellule
Private Sub Worksheet_Change(ByVal Target As Range)
  Dim i  As Integer
  ' Il faut donc éviter tout autre changement lors de l'insertion de la date
  ' Empêcher de nouveaux évènements de s'activer
  Application.EnableEvents = False
  ' Désactiver le rafraichissement
  Application.ScreenUpdating = False
  ' Boucle
  For i = 2 To 100
    If Cells(i, 2) <> "" Then
      Cells(i, 1).Value = Date & " " & Time
      Cells(i, 1).NumberFormat = "mmmm/dd/yyyy h:mm AM/PM"
    End If
  Next i
  ' Réactiver les évènements et le rafraichissement
  Application.EnableEvents = True
  Application.ScreenUpdating = True
End Sub

A+

Bonjour,

Une autre proposition !...

Cdlt.

Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng As Range
Const R As String = "B2:B100"
    If Not Intersect(Target, Me.Range(R)) Is Nothing And Target.Count = 1 Then
        If Not IsEmpty(Target) Then
            With Me.Cells(Target.Row, 1)
                .Value = VBA.Now()
                .NumberFormat = "mmmm/dd/yyyy h:mm AM/PM"
            End With
        End If
    End If
End Sub

Merci pour votre aide

Cependant pourquoi j'ai une exécution que la première fois je change une cellule en colonne B

Après ca ne veut plus faire la même chose si je modifie une autre cellule ?

Re,

Désolé, dans mon code il faut remplacer

  Application.EnableEvents = False

Par

  Application.EnableEvents = True

A saisir dans la fenêtre d'exécution pour que le code se relance

Sinon la proposition de Jean-Eric est excellente également

Bonjour,

J'ai changé le code comment mentionné

le fichier se bloque carrément maintenant, je dois à chaque fois CTRL + ALT + SUPR pour quitter Excel

Sinon pour la proposition de Jean-Eric, je ne comprends pas le code donc je ne sais pas quelle cellule sera mise à jour

Merci pour votre aide quand même

Bonjour,

Dans la procédure Worksheet_Change, Target est la cellule modifiée.

Target.Row est le numéro de ligne de la cellule modifiée.

C'est plus clair ?

Cdlt.

Re,

Aucune raison, à part si tu n'as pas mis le code ou il fallait et comme il fallait

Voici le fichier et une petite vidéo pour te montrer

https://youtu.be/0Jy_al0i6AI

Rechercher des sujets similaires à "bloque chaque fois"