Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Modifier code par macro

2 réponses
Avatar
Patrick BASTARD
Bonsoir.

Je suis bien ennuyé :
J'ai envoyé à plusieurs collègues un classeur contenant des macros.
De multiples informations sont saisies dans chacun de ces classeurs depuis
le début du mois, pour être traitées en fin de mois.
Une des macros de la feuille "Administration" contient deux erreurs, et je
souhaiterais leur envoyer un "patch" : un classeur avec une macro qui
corrigerait l'erreur.

Connaîtriez-vous un lien, ou auriez-vous un exemple de code qui serait
capable de corriger une erreur dans le module d'un autre classeur (ou de
remplacer l'ensemble de la macro, par une autre) ?
L'enregistreur ne m'est d'aucun secours, et Google-Group non plus
(formulation ?).

D'avance, merci.

****** Le code, les erreurs entre les étoiles ******
Private Sub ValidModifPosition()

'Variables
Dim ValeurCherchée
Dim MessageValidModifPos1
Dim MessageValidModifPos2

ValeurCherchée = [CV13].Value

ControleValiditéModifPosition
MessageValidModifPos1 = MsgBox( _
"Voulez-vous réellement modifier cette
position ?", _
vbInformation + vbYesNo, _
"SACA - Paramétrage : Modifier une position
existante")

If MessageValidModifPos1 = 2 Then ' ****** *Modifier 2 par
7* ******
MessageValidModifPos2 = MsgBox(" Opération annulée à votre
demande.", _
vbExclamation, "SACA - Paramétrage :
Valider une modification de position")
MasquAdmin
End If
If MessageValidModifPos2 = 1 Then ' ****** *Modifier 1 par
6* ******
Application.ScreenUpdating = False
AfficheTout
[CV21:EP27].Copy
Application.Goto Reference:=[J1], Scroll:=True
Cells.Find(What:=ValeurCherchée, After:=ActiveCell, LookIn:=xlValues,
LookAt:= _
xlWhole, SearchOrder:=xlByColumns,
SearchDirection:=xlNext, MatchCase:= _
True, SearchFormat:=False).Activate
Selection.PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
End If
EcranModifPosition
End Sub

--
Bien amicordialement,
P. Bastard

2 réponses

Avatar
Modeste
Bonsour® Patrick BASTARD avec ferveur ;o))) vous nous disiez :

Connaîtriez-vous un lien, ou auriez-vous un exemple de code qui serait
capable de corriger une erreur dans le module d'un autre classeur (ou de
remplacer l'ensemble de la macro, par une autre) ?


en effet plutot que de corriger une proc, la solution serait de supprimer la
proc concernée,
puis d'ajouter la proc corrigée ...

voir la bible de la manipulation de VBE par VBA ...
http://www.cpearson.com/excel/vbe.htm

notament :
Deleting A Procedure From A Module
Adding A Procedure To A Module

je n'ai plus l'occasion de pouvoir tester la méthode
mais les codes fournis par Chip Pearson m'ont toujours satisfait

--
--
@+
;o)))

Avatar
Patrick BASTARD
Bosoir, *Modeste*

Mille mercis.

J'y cours...

Amicalement,

Patrick.



Bonsour® Patrick BASTARD avec ferveur ;o))) vous nous disiez :

Connaîtriez-vous un lien, ou auriez-vous un exemple de code qui
serait capable de corriger une erreur dans le module d'un autre
classeur (ou de remplacer l'ensemble de la macro, par une autre) ?


en effet plutot que de corriger une proc, la solution serait de
supprimer la proc concernée,
puis d'ajouter la proc corrigée ...

voir la bible de la manipulation de VBE par VBA ...
http://www.cpearson.com/excel/vbe.htm

notament :
Deleting A Procedure From A Module
Adding A Procedure To A Module

je n'ai plus l'occasion de pouvoir tester la méthode
mais les codes fournis par Chip Pearson m'ont toujours satisfait

--