A voir également:
- Insertion de ligne quand détection d'une phrase
- Site de vente en ligne particulier - Guide
- Partage de photos en ligne - Guide
- Aller à la ligne excel - Guide
- Hors ligne instagram - Guide
- Insertion liste déroulante excel - Guide
3 réponses
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 303
23 déc. 2013 à 12:15
23 déc. 2013 à 12:15
Bonjour
sans précision de ta part, j'ai considéré que "Consigne de sécurité et Environnement:" pouvait être inclus dans d'autres mots
sinon, remplace
Cells(Lig, Col) Like "*" & Cle & "*"
par
Cells(Lig,Col)=Cle
Option Explicit
Const Col As Byte = 1 'colonne de travail
Const Cle As String = "Consigne de sécurité et Environnement:"
Sub insere_lignes()
Dim Derlig As Integer, Lig As Integer
Application.ScreenUpdating = False
Derlig = Columns(1).Find("*", , , , , xlPrevious).Row
For Lig = Derlig To 1 Step -1
If Cells(Lig, Col) Like "*" & Cle & "*" Then
Rows(Lig + 1 & ":" & Lig + 20).Insert
End If
Next
End Sub
sans précision de ta part, j'ai considéré que "Consigne de sécurité et Environnement:" pouvait être inclus dans d'autres mots
sinon, remplace
Cells(Lig, Col) Like "*" & Cle & "*"
par
Cells(Lig,Col)=Cle
Bonjour Michel,
http://cjoint.com/?CLxmT7comDD
Voici le fichier. Je n'ai pas réussi à faire fonctionner la macro. Cela se passe en colonne O. Je souhaiterai que 20 lignes soient insérées quand la phrase est détectée.
Cordialement
http://cjoint.com/?CLxmT7comDD
Voici le fichier. Je n'ai pas réussi à faire fonctionner la macro. Cela se passe en colonne O. Je souhaiterai que 20 lignes soient insérées quand la phrase est détectée.
Cordialement
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 303
23 déc. 2013 à 13:35
23 déc. 2013 à 13:35
La macro a été essayée avec succès avant de l'envoyer...
Pour la colonne O , O est la quinzième lettre de l'alphabet, donc...
Pour la colonne O , O est la quinzième lettre de l'alphabet, donc...
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 303
Modifié par michel_m le 23/12/2013 à 16:37
Modifié par michel_m le 23/12/2013 à 16:37
hé oui colonne "O" <===> colonne 15
D'autre part, il faut enregistrer ton classeur en classeur supportant les macros (.xlsm)
le déclenchement de la macro peut se faire par un bouton
Comme tu n'avais pas précisé le nombre de lignes >2000 :-(
j"ai utilisé une méthode plus rapide en bouclant que sur les cellules comportant le texte recherché dans la colonne
Mais je n'ai rien pigé à tes couleurs grises ou jaune: non précisé également, soit au total 3 imprécisions dans ta demande
A l'avenir Merci d'^tre précis dans tes demandes :o)
D'autre part, il faut enregistrer ton classeur en classeur supportant les macros (.xlsm)
le déclenchement de la macro peut se faire par un bouton
Comme tu n'avais pas précisé le nombre de lignes >2000 :-(
j"ai utilisé une méthode plus rapide en bouclant que sur les cellules comportant le texte recherché dans la colonne
Mais je n'ai rien pigé à tes couleurs grises ou jaune: non précisé également, soit au total 3 imprécisions dans ta demande
Option Explicit
Const Col As String * 1 = "O" 'colonne de travail
Const Cle As String = "Consigne de sécurité et Environnement:"
Sub insere_lignes()
Dim Nbre As Integer, Lig As Integer
'fige le défilement de l'écran
Application.ScreenUpdating = False
' nombre de "cle" dans la colonne
Nbre = Application.CountIf(Columns(Col), Cle) ' nombre de "cle" dans la colonne
For Lig = 1 To Nbre
'recherche de la prochaine ligne contenant la clé
Lig = Columns("O").Find(Cle, Cells(Lig, Col), xlValues).Row
'insertion de 20 lignes
Rows(Lig + 1 & ":" & Lig + 20).Insert
Next
End Sub
A l'avenir Merci d'^tre précis dans tes demandes :o)
Bonjour,
Le code couleur c'est juste pour moi. Tu peux mettre tous en blanc si cela t'arrange. Ta macro fonctionne partiellement, elle s'arrête à la ligne 306. De plus, le décalage des lignes se fait dans le mauvais sens. je souhaitrai un décalage vers le Haut et pas vers le bas. Désolé pour les imprésisions.
Peux tu m'aider ?
Cordialement
Le code couleur c'est juste pour moi. Tu peux mettre tous en blanc si cela t'arrange. Ta macro fonctionne partiellement, elle s'arrête à la ligne 306. De plus, le décalage des lignes se fait dans le mauvais sens. je souhaitrai un décalage vers le Haut et pas vers le bas. Désolé pour les imprésisions.
Peux tu m'aider ?
Cordialement
eriiic
Messages postés
24570
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
8 mai 2024
7 216
23 déc. 2013 à 18:03
23 déc. 2013 à 18:03
Bonjour à tous,
excusez cette intrusion, mais la curiosité me pique... ;-)
Salut michel
dans :
Const Col As String * 1 = "O" 'colonne de travail
pourquoi le * 1 ?
Je ne connais pas son rôle.
Merci et bonnes fêtes de fin d'années à tous.
eric
PS: ne zappe pas le message précédent
excusez cette intrusion, mais la curiosité me pique... ;-)
Salut michel
dans :
Const Col As String * 1 = "O" 'colonne de travail
pourquoi le * 1 ?
Je ne connais pas son rôle.
Merci et bonnes fêtes de fin d'années à tous.
eric
PS: ne zappe pas le message précédent
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 303
23 déc. 2013 à 18:10
23 déc. 2013 à 18:10
Salut Eriic
le *1 définit un string de longueur fixe ici 1
le *1 définit un string de longueur fixe ici 1
eriiic
Messages postés
24570
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
8 mai 2024
7 216
23 déc. 2013 à 18:27
23 déc. 2013 à 18:27
Ah, ok.
Tu es économes toi ;-) Sans doute des restes du temps ou la mémoire était rare et où il fallait optimiser à fond. J'aimais bien :-)
Merci, A+
eric
Tu es économes toi ;-) Sans doute des restes du temps ou la mémoire était rare et où il fallait optimiser à fond. J'aimais bien :-)
Merci, A+
eric