Condition : Copier une cellule
Résolu/Fermé
Kuartz
Messages postés
850
Date d'inscription
vendredi 13 février 2015
Statut
Membre
Dernière intervention
15 février 2019
-
25 juin 2015 à 16:38
Kuartz Messages postés 850 Date d'inscription vendredi 13 février 2015 Statut Membre Dernière intervention 15 février 2019 - 26 juin 2015 à 10:32
Kuartz Messages postés 850 Date d'inscription vendredi 13 février 2015 Statut Membre Dernière intervention 15 février 2019 - 26 juin 2015 à 10:32
A voir également:
- Condition : Copier une cellule
- Excel cellule couleur si condition texte - Guide
- Condition et excel - Guide
- Nbval avec condition ✓ - Forum Excel
- Excel copier une cellule si condition ✓ - Forum Excel
- Recherchev avec condition si ✓ - Forum Excel
6 réponses
ThauTheme
Messages postés
1442
Date d'inscription
mardi 21 octobre 2014
Statut
Membre
Dernière intervention
29 juillet 2022
160
25 juin 2015 à 17:10
25 juin 2015 à 17:10
Bonjour Kuartz, bonjour le forum,
Essaie comme ça :
Essaie comme ça :
Sub Macro1() Dim DL As Integer 'déclare la variable DL (Dernière Ligne) Dim I As Integer 'déclare la variable I (Incrément) DL = Cells(Application.Rows.Count, 1).End(xlUp).Row 'définit la dernière ligne éditée DL de la colonne 1 (=A) For I = 1 To DL 'boucle sur toutes les lignes I 'si la cellule colonne 1 de la ligne I n'est pas en gras, coupe la cellule en colonne 6 et la colle en colonne 4 If Cells(I, 1).Font.Bold = False Then Cells(I, 6).Cut Cells(I, 4) Next I 'prochaine ligne de la boucle End Sub
Kuartz
Messages postés
850
Date d'inscription
vendredi 13 février 2015
Statut
Membre
Dernière intervention
15 février 2019
61
25 juin 2015 à 17:25
25 juin 2015 à 17:25
Merci beaucoup.
Cependant, en fait, la colonne F doit rester telle quelle. Elle ne peut pas être coupée. Il faudrait copier les choses en gras de la colonne A sur les colonnes D des lignes qui ne sont pas en gras.
Je vais te remettre un autre fichier test un peu plus explicite, avec ce qu'il faudrait qu'il apparaisse en exemple sur les 20 premières lignes.
Merci de ta patience.
https://www.cjoint.com/c/EFzpy0hgrMf
Cordialement.
Cependant, en fait, la colonne F doit rester telle quelle. Elle ne peut pas être coupée. Il faudrait copier les choses en gras de la colonne A sur les colonnes D des lignes qui ne sont pas en gras.
Je vais te remettre un autre fichier test un peu plus explicite, avec ce qu'il faudrait qu'il apparaisse en exemple sur les 20 premières lignes.
Merci de ta patience.
https://www.cjoint.com/c/EFzpy0hgrMf
Cordialement.
ThauTheme
Messages postés
1442
Date d'inscription
mardi 21 octobre 2014
Statut
Membre
Dernière intervention
29 juillet 2022
160
26 juin 2015 à 09:33
26 juin 2015 à 09:33
Bonjour Kuartz, bonjour le forum,
Essaie comme ça :
Essaie comme ça :
Sub Macro1() Dim DL As Integer 'déclare la variable DL (Dernière Ligne) Dim I As Integer 'déclare la variable I (Incrément) Dim V As String DL = Cells(Application.Rows.Count, 1).End(xlUp).Row 'définit la dernière ligne éditée DL de la colonne 1 (=A) For I = 1 To DL 'boucle sur toutes les lignes I If Cells(I, 1) <> "" Then 'condition 1 : si la cellule en colonne 1 n'est pas vide If Cells(I, 1).Font.Bold = True Then 'condition 2 : si la police de la cellule en colonne 1 est "Gras" V = Cells(I, 1).Value 'récupere la valeur de la cellule dans la variable V Else 'sinon Cells(I, 4).Value = V 'renvoie la valeur de la varialbe V dans la cellule colonne 4 Cells(I, 4).Font.Bold = True 'applique la police "Gras" End If 'fin de la condition 2 End If 'fin de la condition 1 Next I 'prochaine ligne de la boucle End Sub
Kuartz
Messages postés
850
Date d'inscription
vendredi 13 février 2015
Statut
Membre
Dernière intervention
15 février 2019
61
26 juin 2015 à 09:41
26 juin 2015 à 09:41
Bonjour tout le monde.
Ce code ne marche pas je comprend pas.
Ce code ne marche pas je comprend pas.
Sub Macro1() Dim DL As Integer 'déclare la variable DL (Dernière Ligne) Dim I As Integer 'déclare la variable I (Incrément) DL = Cells(Application.Rows.Count, 1).End(xlUp).Row 'définit la dernière ligne éditée DL de la colonne 1 (=A) For I = 1 To DL 'boucle sur toutes les lignes I 'si la cellule colonne 1 de la ligne I n'est pas en gras, copie la cellule en colonne 1 et la colle en colonne 4 If Cells(I, 1).Font.Bold = True Then Cells(I, 1).Copy Cells(I + 1, 4) If Cells(I, 1).Font.Bold = False And Cells(I, 1).Value <> "" And Cells(I + 1, 1).Value <> "" And Cells(I + 1, 1).Font.Bold = False Then Cells(I - 1, 4).Copy Cells(I, 4) Next I 'prochaine ligne de la boucle End Sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ThauTheme
Messages postés
1442
Date d'inscription
mardi 21 octobre 2014
Statut
Membre
Dernière intervention
29 juillet 2022
160
26 juin 2015 à 10:04
26 juin 2015 à 10:04
Bonjour Kuartz, bonjour le forum,
Le dernier que je t'ai proposé ne convient pas ?...
Le dernier que je t'ai proposé ne convient pas ?...
Kuartz
Messages postés
850
Date d'inscription
vendredi 13 février 2015
Statut
Membre
Dernière intervention
15 février 2019
61
26 juin 2015 à 10:32
26 juin 2015 à 10:32
Si, parfaitement bien.
Je suis désolé j'ai envoyé ma réponse sans lire la tienne... Je suis fatigué.
Merci encore. Tu m'as énormément aidé pour tout.
Cordialement.
Je suis désolé j'ai envoyé ma réponse sans lire la tienne... Je suis fatigué.
Merci encore. Tu m'as énormément aidé pour tout.
Cordialement.