Calvus
XLDnaute Barbatruc
Bonsoir à tous,
Très mauvais en Vba, et procédant plus de façon empirique pour l'instant qu'autre chose, j'ai réussi à faire fonctionner cette macro tant bien que mal.
J'avais essayé de faire une boucle, tenté Do Until While et Loop, en vain ! Dans plein de sens différents, mais jamais de résultat à 100%, seulement partiel. Je suis donc revenu au code ci-dessous, avec If et Then, dont je ne sais même pas si on peut l'optimiser et comment.
Alors comment améliorer mon code, et puis-je utiliser une boucle ? Si oui comment ?
En français, mon souhait est que tant que la réponse à la inputbox n'est pas oui, alors on repose la question.
Merci
Très mauvais en Vba, et procédant plus de façon empirique pour l'instant qu'autre chose, j'ai réussi à faire fonctionner cette macro tant bien que mal.
J'avais essayé de faire une boucle, tenté Do Until While et Loop, en vain ! Dans plein de sens différents, mais jamais de résultat à 100%, seulement partiel. Je suis donc revenu au code ci-dessous, avec If et Then, dont je ne sais même pas si on peut l'optimiser et comment.
Code:
Sub Image_2()
Unprotect 'pour déprotéger l'onglet
ActiveSheet.DrawingObjects("Image 2").Select
Selection.Copy
Protect 'pour protéger
ActiveSheet.Paste
With Selection.ShapeRange
.Left = ActiveCell.Left
.Top = ActiveCell.Top
End With
Application.ScreenUpdating = True
Range("b8").Select
1
rep4 = InputBox("question 1 ?")
If rep4 = "non" Then
rep5 = MsgBox("mauvaise réponse!")
GoTo 1
Else
If rep4 = "oui" Then
GoTo 2
Else
rep4 = ""
GoTo 1
End If
End If
2
ActiveSheet.DrawingObjects.Select
Selection.Delete
ActiveSheet.Protect "dd", True, True, True
Image_4
End Sub
Alors comment améliorer mon code, et puis-je utiliser une boucle ? Si oui comment ?
En français, mon souhait est que tant que la réponse à la inputbox n'est pas oui, alors on repose la question.
Merci