Petit probleme sur mon macro

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

B

bansan

Guest
Bonjour
J'ai fait une macro qui doit en theorie selectionner la ligne entiere si dans la cellule de la colonne A est marqué "oui" pour ensuite faire un copier de cette ligne et un coller special ("juste les valeurs" ) pour remplacer cette meme ligne et pour ensuite passer a la ligne suivante tant que "oui" est marqué en colonne A ...
Voici mon code et ca ne marche pas....
MErci beaucoup de m'aider

Sub figer()

Dim i As Integer
Dim good As String

i = 0
good = Range("A" & 5 + i).Value
Do While good = "oui"
Range("A" & 5 + i).EntireRow.Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
If Range("B" & 5 + i).Value <> "" Then
Exit Sub
'i = i + 1
'End If
Loop

End Sub
 
Re : Petit probleme sur mon macro

Bonjour,

ton 'good = Range("A" & 5 + i).Value' n'est pas dans la boucle while et ne change donc jamais.

Sans etre un expert, je ferai qque chose comme ca :
Code:
Sub figer()

Dim i As Integer
Dim good As String

i = 0
good = Range("A" & 5 + i).Value
Do While good = "oui"
Range("A" & 5 + i).EntireRow.Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
If Range("B" & 5 + i).Value <> "" Then Exit Sub
i = i + 1
good = Range("A" & 5 + i).Value
Loop

End Sub

je n'ai pas fait d'essais ...🙄
 
Re : Petit probleme sur mon macro

Bonjour,

Si j'ai bien compris, une autre solution par ce code suivant :

Code:
Sub figer()
  Dim i As Integer
  i = 5 'on commence à la 5è ligne
  While Cells(i, 2).Value <> "" 'test de fin du table
    If Cells(i, 1).Value = "oui" Then
      Rows(i).EntireRow.Copy
      Cells(i, 1).PasteSpecial Paste:=xlPasteValues
    End If
    i = i + 1
  Wend
End Sub

A tester.
 
Dernière édition:
Re : Petit probleme sur mon macro

Ca na pas l'air de marcher....
J'ai toujours des formules dans mes lignes...je vous envoie mon fichier en joint
dans les colonnes A et B j'ai toujours des liaisons alors que je ne devrais avoir que des valeurs
Merci
 

Pièces jointes

Re : Petit probleme sur mon macro

Re,

A utiliser le code suivant :

Code:
Sub figer()
  Dim i As Integer
  i = 5 'on commence à la 5è ligne
  While Cells(i, 2).Value <> "" 'test de fin du table
    If Cells(i, 1).Value = "OUI" Then
      Rows(i).EntireRow.Copy
      Cells(i, 1).PasteSpecial Paste:=xlPasteValues
    End If
    i = i + 1
  Wend
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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
5
Affichages
914
Réponses
4
Affichages
735
Réponses
10
Affichages
792
Retour