Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Worksheet_Change (RESOLU)

  • Initiateur de la discussion Initiateur de la discussion JBARBE
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

JBARBE

XLDnaute Barbatruc
Bonsoir,

Sur la feuille " Liste " j'ai cette formule =SI(G3<>""; qui me donne une date !

Je ne comprends pas cette formule qui me pose probléme pour l'importation d'une date = ou antérieur à aujourd'hui !

Ici un exemple 11/01/14 ( je voudrais 11/01/13 sans changer la formule )

D'autre part lors de cette importation s'il elle se réalise la macro Worksheet_Change Plante !!!!

Ci-joint le fichier téléchargé sur internet et légèrement modifié par mes soins !

Merci à l'avance de votre aide !
 

Pièces jointes

Dernière édition:
Re : Worksheet_Change + Worksheet_BeforeRightClick + =SI(G3<>"";

J'ai modifié le fichier en supprimant la formule =SI(G3<>"" et tout ce qui lui concernait !

De ce fait, il reste l'importation ou la suppression dans la feuille " La_Banque_Postale" qui plante sur Worksheet_Change

Merci à l'avance !
 

Pièces jointes

Dernière édition:
Re : Worksheet_Change

Merci Job pour la réponse mais lorsqu’il s'agit à l'ouverture du fichier de valider et ainsi de copier dans la feuille " compte_banque_postale " la macro plante toujours sur If Target.Column = 7 And Target.Value = "Compte SG" Then ( ton code et mon code)

Mon code :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 7 And Target.Value = "Compte SG" Then
  x = Sheets("Compte_Société_Générale").Range("B" & Rows.Count).End(xlUp).Row + 1
  Range("B" & Target.Row & ":G" & Target.Row).Copy Destination:=Sheets("Compte_Société_Générale").Range("B" & x)
  Sheets("Compte_Société_Générale").Range("C" & x) = "Virement"
  Sheets("Compte_Société_Générale").Range("D" & x) = "Compte BP"
  Sheets("Compte_Société_Générale").Range("G" & x) = "Compte BP"
  Sheets("Compte_Société_Générale").Range("F" & x) = Sheets("Compte_Société_Générale").Range("E" & x)
  Sheets("Compte_Société_Générale").Range("E" & x).ClearContents
End If
End Sub
 
Re : Worksheet_Change

Re,

La macro Change beugue si Target est une plage de plusieurs cellules (lors d'un effacement par exemple).

En 2ème ligne, au lieu de :

Code:
If Target.Column = 7 And Target.Value = "Compte SG" Then
utiliser :

Code:
If Target.Column = 7 And Target(1) = "Compte SG" Then
A+
 
Re : Worksheet_Change

C'est OK ! Merci Job voici le fichier terminé !

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
'If Target.Column = 7 And Target.Value = "Compte SG" Then
If Target.Column = 7 And Target(1) = "Compte SG" Then
  x = Sheets("Compte_Société_Générale").Range("B" & Rows.Count).End(xlUp).Row + 1
  Range("B" & Target.Row & ":G" & Target.Row).Copy Destination:=Sheets("Compte_Société_Générale").Range("B" & x)
  Sheets("Compte_Société_Générale").Range("C" & x) = "Virement"
  Sheets("Compte_Société_Générale").Range("D" & x) = "Compte BP"
  Sheets("Compte_Société_Générale").Range("G" & x) = "Compte BP"
  Sheets("Compte_Société_Générale").Range("F" & x) = Sheets("Compte_Société_Générale").Range("E" & x)
  Sheets("Compte_Société_Générale").Range("E" & x).ClearContents
End If
End Sub

A+
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

B
Réponses
4
Affichages
2 K
benoitoleron
B
N
  • Question Question
Réponses
5
Affichages
3 K
N
Réponses
9
Affichages
1 K
N
M
Réponses
4
Affichages
2 K
M
C
Réponses
6
Affichages
3 K
christophe697569
C
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…