COmprendre une programmation

  • Initiateur de la discussion Initiateur de la discussion Yann21
  • 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 !

Yann21

XLDnaute Occasionnel
Bonjour,

On m'avait envoyer un excellent programme (le terme n'est peut être pas le bon, je suis grand débutant). Depuis, j'ai modifié ma feuille Excel, ce programme ne fonctionne plus ce qui est normal, mais j'aimerai comprendre ce programme pour l'adapter à ma nouvelle feuille Excel. Vous remerciant pour votre aide.

Le programme en question :

Private Sub Worksheet_Change(ByVal Target As Range)

If Not Intersect(Target, Range("A4:C" & Range("A1").CurrentRegion.Count / 15)) Is Nothing Then

If Cells(Target.Row, 1) = "" Or Cells(Target.Row, 2) = "" Or Cells(Target.Row, 3) = "" Then Exit Sub

Application.ScreenUpdating = False

Range(Cells(Target.Row, 4), Cells(Target.Row, 7)).ClearContents

Range(Cells(Target.Row, 9), Cells(Target.Row, 12)).ClearContents

For Each cellule In Sheets(Cells(Target.Row, 1).Text).Range("B3:BF56")

If UCase(cellule.Value) = UCase(Cells(Target.Row, 3).Text) Then

ligne = cellule.Row

colonne = cellule.Column

Cells(Target.Row, 4) = Sheets(Cells(Target.Row, 1).Text).Cells(ligne, colonne - 2)

Cells(Target.Row, 5) = Sheets(Cells(Target.Row, 1).Text).Cells(ligne + 7, colonne - 2)

Cells(Target.Row, 6) = Sheets(Cells(Target.Row, 1).Text).Cells(ligne + 7, colonne - 1)

Cells(Target.Row, 7) = Sheets(Cells(Target.Row, 1).Text).Cells(ligne, colonne - 1)

Cells(Target.Row, 9) = Sheets(Cells(Target.Row, 1).Text).Cells(ligne + 7, colonne + 1)

Cells(Target.Row, 10) = Sheets(Cells(Target.Row, 1).Text).Cells(ligne + 7, colonne + 2)

Cells(Target.Row, 11) = Sheets(Cells(Target.Row, 1).Text).Cells(ligne, colonne + 1)

Cells(Target.Row, 12) = Sheets(Cells(Target.Row, 1).Text).Cells(ligne, colonne + 2)

Exit Sub

End If

Next cellule

End If

Application.ScreenUpdating = True

End Sub
 
- 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

Réponses
5
Affichages
703
Réponses
8
Affichages
647
Réponses
1
Affichages
265
Réponses
2
Affichages
427
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
1 K
Réponses
4
Affichages
439
Retour