Actionner un code au changement de la valeur dune
Fermé
Chrisnapoli
-
Chris 94 Messages postés 54087 Date d'inscription Statut Modérateur Dernière intervention -
Chris 94 Messages postés 54087 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour
je voudrais un code qui me permette d'actionner une macro chaque fois qu'une des 4 valeurs inscrite dans des cellules précises(elles sont 20 au total )va changer
le contenue de ces cellules est donne par une condition qui est inscrite dans ces 20 cellules par formules le résultat obtenu est OK quand la macro devra être enclenche ou("")
le systeme fonctionne actuellement par bouton et je veux rendre automatique la procédure je mets en dessous le code de cette macro
Option Compare Text
Private Sub linkrg(target As Range, source As Range)
source.Copy
target.Parent.Activate
target.Select
target.Parent.Paste link:=True
Application.CutCopyMode = False
End Sub
Sub RecopiePlage()
Application.ScreenUpdating = True
If [AX101] = "Ok" Then
Call linkrg([CK11:CS51], [BA101:BI141])
ElseIf [AX144] = "Ok" Then
Call linkrg([CK11:CS51], [BA144:BI184])
ElseIf [AX187] = "Ok" Then
Call linkrg([CK11:CS51], [BA187:BI227])
ElseIf [AX230] = "Ok" Then
Call linkrg([CK11:CS51], [BA230:BI270])
ElseIf [AX273] = "Ok" Then
Call linkrg([CK11:CS51], [BA273:BI313])
End If
If [BZ101] = "Ok" Then
Call linkrg([DB11:DJ51], [BO101:BW141])
ElseIf [BZ144] = "Ok" Then
Call linkrg([DB11:DJ51], [BO144:BW184])
ElseIf [BZ187] = "Ok" Then
Call linkrg([DB11:DJ51], [BO187:BW227])
ElseIf [BZ230] = "Ok" Then
Call linkrg([DB11:DJ51], [BO230:BW270])
ElseIf [BZ273] = "Ok" Then
Call linkrg([DB11:DJ51], [BO273:BW313])
End If
If [AX316] = "Ok" Then
Call linkrg([CK57:CS97], [BA316:BI356])
ElseIf [AX359] = "Ok" Then
Call linkrg([CK57:CS97], [BA359:BI399])
ElseIf [AX402] = "Ok" Then
Call linkrg([CK57:CS97], [BA402:BI442])
ElseIf [AX445] = "Ok" Then
Call linkrg([CK57:CS97], [BA445:BI485])
ElseIf [AX488] = "Ok" Then
Call linkrg([CK57:CS97], [BA488:BI528])
End If
If [BZ316] = "Ok" Then
Call linkrg([DB57:DJ97], [BO316:BW356])
ElseIf [BZ359] = "Ok" Then
Call linkrg([DB57:DJ97], [BO359:BW399])
ElseIf [BZ402] = "Ok" Then
Call linkrg([DB57:DJ97], [BO402:BW442])
ElseIf [BZ445] = "Ok" Then
Call linkrg([DB57:DJ97], [BO445:BW485])
ElseIf [BZ488] = "Ok" Then
Call linkrg([DB57:DJ97], [BO488:BW528])
End If
Cells(12, 1).Activate
ActiveWindow.ScrollRow = ActiveCell.Row
End Sub
je voudrais un code qui me permette d'actionner une macro chaque fois qu'une des 4 valeurs inscrite dans des cellules précises(elles sont 20 au total )va changer
le contenue de ces cellules est donne par une condition qui est inscrite dans ces 20 cellules par formules le résultat obtenu est OK quand la macro devra être enclenche ou("")
le systeme fonctionne actuellement par bouton et je veux rendre automatique la procédure je mets en dessous le code de cette macro
Option Compare Text
Private Sub linkrg(target As Range, source As Range)
source.Copy
target.Parent.Activate
target.Select
target.Parent.Paste link:=True
Application.CutCopyMode = False
End Sub
Sub RecopiePlage()
Application.ScreenUpdating = True
If [AX101] = "Ok" Then
Call linkrg([CK11:CS51], [BA101:BI141])
ElseIf [AX144] = "Ok" Then
Call linkrg([CK11:CS51], [BA144:BI184])
ElseIf [AX187] = "Ok" Then
Call linkrg([CK11:CS51], [BA187:BI227])
ElseIf [AX230] = "Ok" Then
Call linkrg([CK11:CS51], [BA230:BI270])
ElseIf [AX273] = "Ok" Then
Call linkrg([CK11:CS51], [BA273:BI313])
End If
If [BZ101] = "Ok" Then
Call linkrg([DB11:DJ51], [BO101:BW141])
ElseIf [BZ144] = "Ok" Then
Call linkrg([DB11:DJ51], [BO144:BW184])
ElseIf [BZ187] = "Ok" Then
Call linkrg([DB11:DJ51], [BO187:BW227])
ElseIf [BZ230] = "Ok" Then
Call linkrg([DB11:DJ51], [BO230:BW270])
ElseIf [BZ273] = "Ok" Then
Call linkrg([DB11:DJ51], [BO273:BW313])
End If
If [AX316] = "Ok" Then
Call linkrg([CK57:CS97], [BA316:BI356])
ElseIf [AX359] = "Ok" Then
Call linkrg([CK57:CS97], [BA359:BI399])
ElseIf [AX402] = "Ok" Then
Call linkrg([CK57:CS97], [BA402:BI442])
ElseIf [AX445] = "Ok" Then
Call linkrg([CK57:CS97], [BA445:BI485])
ElseIf [AX488] = "Ok" Then
Call linkrg([CK57:CS97], [BA488:BI528])
End If
If [BZ316] = "Ok" Then
Call linkrg([DB57:DJ97], [BO316:BW356])
ElseIf [BZ359] = "Ok" Then
Call linkrg([DB57:DJ97], [BO359:BW399])
ElseIf [BZ402] = "Ok" Then
Call linkrg([DB57:DJ97], [BO402:BW442])
ElseIf [BZ445] = "Ok" Then
Call linkrg([DB57:DJ97], [BO445:BW485])
ElseIf [BZ488] = "Ok" Then
Call linkrg([DB57:DJ97], [BO488:BW528])
End If
Cells(12, 1).Activate
ActiveWindow.ScrollRow = ActiveCell.Row
End Sub
A voir également:
- Actionner un code au changement de la valeur dune
- Code ascii - Guide
- Changer de dns - Guide
- Comment déverrouiller un téléphone quand on a oublié le code - Guide
- Changement code pin - Guide
- Code puk bloqué - Guide
1 réponse
Bonjour,
Ne serait-ce pas la même chose que https://forums.commentcamarche.net/forum/affich-35416428-correction-de-mon-code ?
Ne serait-ce pas la même chose que https://forums.commentcamarche.net/forum/affich-35416428-correction-de-mon-code ?
l autre c 'est un semblant de solution , mais comme je ne connais pas la programmation-il m 'est difficile de trouver la bonne écriture
la macro marche mais pas en automatique donc dans
https://forums.commentcamarche.net/forum/affich-35416428-correction-de-mon-code
j ai essaye humblement de trouver une solution parce que toutes les propositions que l 'on m 'a faite ne sont pas concluantes "
je pense que si quel-qu 'un prend la peine de corriger ce " correction de mon code ", je vais arriver à ce que je me suis fixé ,encore faut il que la personne comprenne exactement la ou je veux arriver
la logique est très simple le chemin à emprunter est parait il plus compliqué
j essaye de poster différents messages en expliquant de différentes façons mais apparemment personne ne trouve... patience cela ne serait tarder......