Executer deux tache excel
Résolu
nonossov
Messages postés
610
Date d'inscription
Statut
Membre
Dernière intervention
-
nonossov Messages postés 610 Date d'inscription Statut Membre Dernière intervention -
nonossov Messages postés 610 Date d'inscription Statut Membre Dernière intervention -
Bonjour mes amis,
J'ai besoin de votre expertise comment puis je executer deux tache excel a savoir: couper les cellule qui demarre par 0 et les coller dans la colonne "C" et les remplacer par Y. Exemple dans les colonnes suivantes:
A/B/C
0a
b
0c
d
le resultat:
A/B/C
y / /0a
b / /
y / /0c
d / /
j'ai couper coller les 0a . 0c dans la colonne C et les remplacer par y
Merci infiniment pour votre aide
J'ai besoin de votre expertise comment puis je executer deux tache excel a savoir: couper les cellule qui demarre par 0 et les coller dans la colonne "C" et les remplacer par Y. Exemple dans les colonnes suivantes:
A/B/C
0a
b
0c
d
le resultat:
A/B/C
y / /0a
b / /
y / /0c
d / /
j'ai couper coller les 0a . 0c dans la colonne C et les remplacer par y
Merci infiniment pour votre aide
Configuration: Windows / Firefox 52.0
A voir également:
- Executer deux tache excel
- Liste déroulante excel - Guide
- Nombre de jours entre deux dates excel - Guide
- Word et excel gratuit - Guide
- Déplacer colonne excel - Guide
- Concatener deux cellules excel - Guide
2 réponses
Bonjour,
Sure que ce sont des lettres apres les "0" et la ou y a pas de "0" aussi???????????????????
Sure que ce sont des lettres apres les "0" et la ou y a pas de "0" aussi???????????????????
Bonjour,
Est ce que vousn pouvez inserer
Oui.
Est ce que vousn pouvez inserer
Oui.
Sub decoupe() Dim Plage As Range With Worksheets("feuil1") derlig = .Range("A" & .Rows.Count).End(xlUp).Row 'derniere cellule non vide colonne A Set Plage = .Range("A1:A" & derlig) 'mise en memoire plage de cellules Nb = Application.CountIf(Plage, "0*") 'nombre de fois "0" et lettre If Nb > 0 Then Memlig = 1 Do While Application.CountIf(Plage, "0*") > 0 'boucle sur la colonne lig = .Columns(1).Find("0*", .Cells(Memlig, 1), , xlWhole).Row Memlig = lig Ville = .Cells(lig, 1) Flg_Vide = False CR = Worksheets("Les variables").Columns(1).Find(Ville).Row If Worksheets("Les variables").Cells(CR, 2) = "" Then Flg_Vide = True Else Set CR = Worksheets("Les variables").Columns(1).Find(Ville).Row End If Nb = Application.CountIf(Plage, Ville) If Nb > 0 Then For d = 1 To Nb lig = .Columns(1).Find(Ville, .Cells(lig, 1), , xlWhole).Row If Not Flg_Vide Then .Cells(lig, 3) = .Cells(lig, 1): CR.Offset(, 1).Copy .Cells(lig, 1) Else .Cells(lig, 3) = .Cells(lig, 1): .Cells(lig, 1) = 401100 End If Next d End If Loop End If End With Set Plage = Nothing Set CR = Nothing End Sub
Je ne ss pas pourquoi je recois un message d'erreur:
Merci d'essayer l'execution de la macro:
https://www.cjoint.com/c/HLtjnVHkVpH
Merci d'essayer l'execution de la macro:
https://www.cjoint.com/c/HLtjnVHkVpH
Re,
Ben, je regarde
Suite:
petit probleme avec definition de CR, corrigé:
Ben, je regarde
Suite:
petit probleme avec definition de CR, corrigé:
Sub decoupe() Dim Plage As Range With Worksheets("feuil1") derlig = .Range("A" & .Rows.Count).End(xlUp).Row 'derniere cellule non vide colonne A Set Plage = .Range("A1:A" & derlig) 'mise en memoire plage de cellules Nb = Application.CountIf(Plage, "0*") 'nombre de fois "0" et lettre If Nb > 0 Then Memlig = 1 Do While Application.CountIf(Plage, "0*") > 0 'boucle sur la colonne lig = .Columns(1).Find("0*", .Cells(Memlig, 1), , xlWhole).Row Memlig = lig Ville = .Cells(lig, 1) Flg_Vide = False CR = Worksheets("Les variables").Columns(1).Find(Ville).Row If Worksheets("Les variables").Cells(CR, 2) = "" Then Flg_Vide = True End If Nb = Application.CountIf(Plage, Ville) If Nb > 0 Then For d = 1 To Nb lig = .Columns(1).Find(Ville, .Cells(lig, 1), , xlWhole).Row If Not Flg_Vide Then .Cells(lig, 3) = .Cells(lig, 1): Worksheets("Les variables").Cells(CR, 2).Copy .Cells(lig, 1) Else .Cells(lig, 3) = .Cells(lig, 1): .Cells(lig, 1) = 401100 End If Next d End If Loop End If End With Set Plage = Nothing Set CR = Nothing End Sub
Re,
Tout a fait Thierry, vous ne l'avez pas dit que vous pouvez avoir des 0xxx qui ne figurent pas dans Les Variables!!
C'est a vous de definir le "cahier des charges"
Je modifie
Tout a fait Thierry, vous ne l'avez pas dit que vous pouvez avoir des 0xxx qui ne figurent pas dans Les Variables!!
C'est a vous de definir le "cahier des charges"
Je modifie
Sub decoupe() Dim Plage As Range, CR As Range, LV As Long With Worksheets("feuil1") derlig = .Range("A" & .Rows.Count).End(xlUp).Row 'derniere cellule non vide colonne A Set Plage = .Range("A1:A" & derlig) 'mise en memoire plage de cellules Nb = Application.CountIf(Plage, "0*") 'nombre de fois "0" et lettre If Nb > 0 Then Memlig = 1 Do While Application.CountIf(Plage, "0*") > 0 'boucle sur la colonne lig = .Columns(1).Find("0*", .Cells(Memlig, 1), , xlWhole).Row Memlig = lig Ville = .Cells(lig, 1) Flg_Vide = False Set CV = Worksheets("Les variables").Columns(1).Find(Ville) If Not CV Is Nothing Then LV = CV.Row If Worksheets("Les variables").Cells(LV, 2) = "" Then Flg_Vide = True Nb = Application.CountIf(Plage, Ville) If Nb > 0 Then For d = 1 To Nb lig = .Columns(1).Find(Ville, .Cells(lig, 1), , xlWhole).Row If Not Flg_Vide Then .Cells(lig, 3) = .Cells(lig, 1): Worksheets("Les variables").Cells(LV, 2).Copy .Cells(lig, 1) Else .Cells(lig, 3) = .Cells(lig, 1): .Cells(lig, 1) = 401100 End If Next d End If Else .Cells(lig, 2) = Ville: .Cells(lig, 1) = "NOK" MsgBox "Attention: " & Ville & " n'est pas dans feuille Les Variables !!!!" End If Loop End If End With Set Plage = Nothing Set CR = Nothing End Sub
Merci infiniment
Ok, je regarde la chose
Suite
Une facon de faire
Ce code vous donne la ligne de la derniere cellule NON VIDE de la colonne!!!!!!!!!!!!!!!!!!!!!!