Pour cumuler plusieurs macro 'worksheet_change

bonsoir Jean Eric

peux tu m'aider a nouveau stp?

je n'ai pas compris ton dernier mess

que veux tu mentionner par feuille active. n'est ce pas deja fait dans le code ?

mille merci

Bonjour,

Essaie ainsi :

Option Explicit

Public Sub csrntsmontoir()
Dim ws As Worksheet
    Set ws = ActiveWorkbook.Worksheets("CSR")
    With ws
        .[A14].Value = "aaaaaaaa"
        .[A16].Value = "bbbbbbbb"
        .[A18].Value = "ccccccccc"
        .[A20].Value = "dddddddd"
        .[E3].Select
    End With
    Set ws = Nothing
End Sub

merci

désolé mais tu vas un peu vite pour moi

ou mettre ce code ?

que faire de ce donner avant

pourrais tu me donner le fichier que tu as modifié stp de façon a comprendre ce que tu as fais ?

merci bcp

ALLELUIA !!!

Un énorme merci à toi Jean Eric !

j'ai trouvé ce que tu voulais dire et merci merci merci celà marche enfin.

j'ai beaucoup de respect pour tous les experts comme toi qui donne de leur temps pour aider les jeunes novices comme moi.

Sincèrement tu m'as beaucoup aidé

Si tu veux bien j'aurai une toute dernière requête a te demander. Maintenant que le lien entre les 2 pages se fait bien en focntion du choix de mon menu déroulant, j'aimerai peaufiner la macro lorsque le choix est "NANTES + MONTOIR". jusqu'à présent celà lançait la macro csrntsmontoir avec des changements de test.

j'aimerai maintenant que lors de ce changement la feuille CSR soit bcp plus modifiée. j'ai donc fait un code mais je ne vois pas comment l'intégrer dans le tien qui est pour rappel comme suit :

Option Explicit

Public Sub HELP()

Application.EnableEvents = True

End Sub

Public Sub csrntsmontoir()

Dim ws As Worksheet

Set ws = ActiveWorkbook.Worksheets("CSR")

With ws

.[A14].Value = "aaaaaaaa"

.[A16].Value = "bbbbbbbb"

.[A18].Value = "ccccccccc"

.[A20].Value = "dddddddd"

End With

Set ws = Nothing

End Sub

Peux tu m'aider encore une fois stp ?

voilà ce que je souhaiterai indiquer (au delà des cellules avec un nouveau texte dedans certaines ont une modif de leur encadrement)

Range("A14").Select

ActiveCell.FormulaR1C1 = "Pilotage in Nantes"

Range("A16").Select

ActiveCell.FormulaR1C1 = "Pilotage shifting from Nantes to Montoir"

Range("F16").Select

ActiveCell.FormulaR1C1 = "X"

Range("A18").Select

ActiveCell.FormulaR1C1 = "Pilotage out Nantes"

Range("A20").Select

ActiveCell.FormulaR1C1 = "Towage in Nantes"

Range("F20").Select

ActiveCell.FormulaR1C1 = "x"

Range("A22").Select

ActiveCell.FormulaR1C1 = "Towage out Nantes"

Range("F22").Select

ActiveCell.FormulaR1C1 = "x"

Range("E18").Select

ActiveWindow.SmallScroll Down:=9

Range("A24").Select

ActiveCell.FormulaR1C1 = "Towage out Nantes"

Range("A26").Select

ActiveCell.FormulaR1C1 = "Boatmen ashore in "

Range("A24").Select

ActiveCell.FormulaR1C1 = "Towage in Montoir"

Range("A26").Select

ActiveCell.FormulaR1C1 = "Towage out Montoir"

Range("C26:C27").Select

Selection.Borders(xlDiagonalDown).LineStyle = xlNone

Selection.Borders(xlDiagonalUp).LineStyle = xlNone

With Selection.Borders(xlEdgeLeft)

.LineStyle = xlContinuous

.ColorIndex = xlAutomatic

.TintAndShade = 0

.Weight = xlThin

End With

With Selection.Borders(xlEdgeTop)

.LineStyle = xlContinuous

.ColorIndex = xlAutomatic

.TintAndShade = 0

.Weight = xlThin

End With

With Selection.Borders(xlEdgeBottom)

.LineStyle = xlContinuous

.ColorIndex = xlAutomatic

.TintAndShade = 0

.Weight = xlThin

End With

With Selection.Borders(xlEdgeRight)

.LineStyle = xlContinuous

.ColorIndex = xlAutomatic

.TintAndShade = 0

.Weight = xlThin

End With

Selection.Borders(xlInsideVertical).LineStyle = xlNone

Range("E26").Select

ActiveCell.FormulaR1C1 = "Tugboats(s)"

Range("E26").Select

With Selection

.HorizontalAlignment = xlRight

.VerticalAlignment = xlBottom

.WrapText = False

.Orientation = 0

.AddIndent = False

.IndentLevel = 0

.ShrinkToFit = False

.ReadingOrder = xlContext

.MergeCells = False

End With

Range("F24").Select

ActiveCell.FormulaR1C1 = "X"

Range("E26").Select

ActiveCell.FormulaR1C1 = "Tugboat(s)"

Range("A28").Select

ActiveCell.FormulaR1C1 = "Boatmen ashore Nantes"

Range("A28").Select

ActiveCell.FormulaR1C1 = "Boatmen ashore in Nantes"

Range("A29").Select

ActiveCell.FormulaR1C1 = "Boatmen ashore out Nantes"

Range("F28").Select

ActiveCell.FormulaR1C1 = "X"

Range("F29").Select

ActiveCell.FormulaR1C1 = "X"

Range("A29").Select

Selection.Font.Italic = False

Range("A30").Select

ActiveCell.FormulaR1C1 = "Boatmen ashore in Montoir"

Range("A31").Select

ActiveCell.FormulaR1C1 = "Boatmen ashore out Montoir"

Range("A31").Select

Selection.Font.Italic = False

Range("F31").Select

ActiveCell.FormulaR1C1 = "X"

Range("A32").Select

ActiveCell.FormulaR1C1 = "Boatmen on board in Montoir"

Range("B24").Select

ActiveWindow.SmallScroll Down:=6

Range("F32").Select

ActiveCell.FormulaR1C1 = "x"

Range("A34").Select

ActiveCell.FormulaR1C1 = "Boatmen on board ou Montoir"

Range("F34").Select

ActiveCell.FormulaR1C1 = "x"

Range("A36").Select

ActiveCell.FormulaR1C1 = _

"Boatmen assistance for shore gangway shifting with forklift"

Range("B27").Select

ActiveWindow.SmallScroll Down:=24

Range("M65").Select

ActiveCell.FormulaR1C1 = "X"

Range("M61").Select

ActiveCell.FormulaR1C1 = "X"

Range("M62").Select

ActiveCell.FormulaR1C1 = "X"

Range("O61").Select

ActiveWindow.SmallScroll Down:=-51

Range("E9").Select

End Sub

Jean Eric

j'ai trouvé. celà marche impeccable

j'ai fait les 2 macros que je souhaitais

seul hic

l'ensemble ne fonctionne plus lorsque je protège la feuille CSR.

j'ai bien essayé de mettre la fonction

Sheet("CSR").Unprotect

ou

activeworksheet.unprotect

mais impossible de combler le problème

puis-je te demander ton aide stp

vu que c'est un fichier a partager avec mes collègues je souhaite vraiment protéger cette page pour éviter tout problème

MERCI INFINIMENT

je te joins en PJ le fichier actualisé. tu pourras voi si j'ai bien travaillé . a bientôt

Seb

6test-bon.xlsm (232.38 Ko)

Bonjour,

Regarde ci cela te convient.

Cdlt.

16test-bon.xlsm (215.17 Ko)

BRAVO !

tu m'épates

Y a t il moyen d'enlever le message d'erreur dans on change au 1er coup le port?

quel est le MDP stp ?

merci

seb

Re,

Voir fichier modifié.

Le mot de passe est excel et est noté dans le module modProtection.

Cdlt.

13test-bon-1.xlsm (220.10 Ko)

Génial !!!

Tu es un Dieux d'Excel VBA. Franchement bravo !

dis moi que dois je changer si je veux protéger la feuille CSR sans mot de passe ? cad pouvoir faire la démarche de déprotéger la feuille mais sans entrer de MDP.

comment es tu arrivé à ce niveau sur VBA ? y a t il des formations ?

en tous cas merci merci merci

a tout à l'heure

seb

Bonjour,

Copie en lieu et place le code ci-dessous :

Option Explicit
Option Private Module

'Public Const PWD As String = "excel"

Public Sub ProtectSheet(ws As Worksheet)
    'ws.Protect Password:=PWD, userinterfaceonly:=True
    ws.Protect userinterfaceonly:=True
End Sub

Public Sub UnprotectSheet(ws As Worksheet)
    'ws.Unprotect (PWD)
    ws.Unprotect
End Sub

Et je ne suis pas un dieu d'Excel, ni même un demi-dieu.

Je me débrouille comme tant d'autres et on essaie de partager.

Pour les formations, elles sont nombreuses et tu peux par exemple commencer avec les cours Excel et les cours VBA de ce site.

Cdlt.

GENIAL §

c'est parfait

je vais essayer de mettre tout celà dans mon fichier complet et te redis.

encore une fois toute ma gratitude

Cool

c'est parfait

exactement comme je le voulais

que dire de plus qu'un énorme merci à toi Jean Eric.

merci pour ta patience et ton aide !

peut etre à bientot si je cale dans d'autres fichier VBA

take care

Seb

Rechercher des sujets similaires à "cumuler macro worksheet change"