Note: The other languages of the website are Google-translated. Back to English

Comment insérer automatiquement une ligne en fonction de la valeur de la cellule dans Excel?

doc-insert-row-based-on-value-1
Supposons que vous ayez une plage de données et que vous souhaitiez insérer automatiquement des lignes vides au-dessus ou en dessous d'une certaine valeur dans Excel, par exemple, insérer automatiquement des lignes inférieures à zéro comme illustré ci-dessous. Dans Excel, il n'existe aucun moyen direct de résoudre cette tâche, mais je peux introduire un code de macro pour que vous puissiez insérer automatiquement des lignes en fonction d'une certaine valeur dans Excel.
Insérer la ligne ci-dessous en fonction de la valeur de la cellule avec VBA

Insérer la ligne ci-dessus en fonction de la valeur de la cellule avec Kutools for Excel bonne idée3

Pour insérer une ligne en fonction de la valeur de la cellule en exécutant VBA, procédez comme suit:

1. presse Alt + F11 touches simultanément, et un Microsoft Visual Basic pour applications la fenêtre apparaît.

2. Cliquez insérer > Module, puis collez ci-dessous le code VBA au popping Module fenêtre.

VBA: Insérez la ligne ci-dessous en fonction de la valeur de la cellule.

Sub BlankLine()
	'Updateby20150203
	Dim Rng As Range
	Dim WorkRng As Range
	On Error Resume Next
	xTitleId                   = "KutoolsforExcel"
	Set WorkRng                = Application.Selection
	Set WorkRng                = Application.InputBox("Range", xTitleId, WorkRng.Address, Type: = 8)
	Set WorkRng                = WorkRng.Columns(1)
	xLastRow                   = WorkRng.Rows.Count
	Application.ScreenUpdating = False
	For xRowIndex = xLastRow To 1 Step - 1
		Set Rng                   = WorkRng.Range("A" & xRowIndex)
		If Rng.Value = "0" Then
			Rng.Offset(1, 0).EntireRow.Insert Shift: = xlDown
		End If
	Next
	Application.ScreenUpdating = True
End Sub

3. Cliquez F5 clé ou le course bouton, une boîte de dialogue apparaît et sélectionnez la colonne contient zéro. Voir la capture d'écran:
doc-insert-row-based-on-value-2

4. Cliquez OK. Ensuite, des lignes vides seront insérées sous la valeur zéro.
doc-insert-row-based-on-value-3

Conseil :

1. Si vous souhaitez insérer des lignes basées sur une autre valeur, vous pouvez modifier 0 à n'importe quelle valeur que vous voulez dans le VBA: Si Rng.Value = "0" alors.

2. Si vous souhaitez insérer des lignes au-dessus de zéro ou d'une autre valeur, vous pouvez utiliser le code vba ci-dessous.

VBA: insérer une ligne au-dessus de la valeur zéro:

Sub BlankLine()
	'Updateby20150203
	Dim Rng As Range
	Dim WorkRng As Range
	On Error Resume Next
	xTitleId                   = "KutoolsforExcel"
	Set WorkRng                = Application.Selection
	Set WorkRng                = Application.InputBox("Range", xTitleId, WorkRng.Address, Type: = 8)
	Set WorkRng                = WorkRng.Columns(1)
	xLastRow                   = WorkRng.Rows.Count
	Application.ScreenUpdating = False
	For xRowIndex = xLastRow To 1 Step - 1
		Set Rng                   = WorkRng.Range("A" & xRowIndex)
		If Rng.Value = "0" Then
			Rng.EntireRow.Insert Shift: = xlDown
		End If
	Next
	Application.ScreenUpdating = True
End Sub

doc-insert-row-based-on-value-4


Si vous n'êtes pas familier avec VBA, vous pouvez essayer Kutools pour Excel's Sélectionnez des cellules spécifiques utilitaire, puis insérez les lignes ci-dessus.

Kutools pour Excel, avec plus de 300 fonctions pratiques, rend vos travaux plus faciles. 

Après l'installation de Kutools for Excel, procédez comme suit:(Téléchargez gratuitement Kutools pour Excel maintenant!)

1. Sélectionnez la liste dans laquelle vous souhaitez rechercher les cellules spécifiques, puis cliquez sur Kutools > Sélectionnez > Sélectionnez des cellules spécifiques. Voir la capture d'écran:
doc insérer une ligne basée sur la valeur 9

2. Dans la boîte de dialogue contextuelle, cochez Ligne entière option, puis sélectionnez Équivaut à À partir de Type spécifique liste, puis entrez la valeur que vous souhaitez rechercher dans la zone de texte de droite. Voir la capture d'écran:
doc insérer une ligne basée sur la valeur 6

3. Cliquez Ok, et une boîte de dialogue apparaît pour vous rappeler le nombre de lignes sélectionnées, fermez-la simplement.

4. Placez le curseur sur une ligne sélectionnée et cliquez avec le bouton droit pour sélectionner insérer depuis le menu contextuel. Voir la capture d'écran:
doc insérer une ligne basée sur la valeur 7

Maintenant, les lignes sont insérées ci-dessus en fonction d'une valeur spécifique.
doc insérer une ligne basée sur la valeur 8


Articles relatifs:


Les meilleurs outils de productivité de bureau

Kutools for Excel résout la plupart de vos problèmes et augmente votre productivité de 80%

  • Réutilisation: Insérer rapidement formules complexes, graphiques et tout ce que vous avez utilisé auparavant; Crypter les cellules avec mot de passe; Créer une liste de diffusion et envoyer des e-mails ...
  • Barre Super Formula (modifiez facilement plusieurs lignes de texte et de formule); Disposition de lecture (lire et modifier facilement un grand nombre de cellules); Coller dans la plage filtréeplus
  • Fusionner les cellules / lignes / colonnes sans perdre de données; Contenu des cellules divisées; Combiner des lignes / colonnes en double... Empêcher les cellules en double; Comparer les gammesplus
  • Sélectionnez Dupliquer ou Unique Lignes; Sélectionnez les lignes vides (toutes les cellules sont vides); Super Find et Fuzzy Find dans de nombreux classeurs; Sélection aléatoire ...
  • Copie exacte Plusieurs cellules sans changer la référence de formule; Créer automatiquement des références à plusieurs feuilles; Insérer des puces, Cases à cocher et plus encore ...
  • Extrait du texte, Ajouter du texte, Supprimer par position, Supprimer l'espace; Créer et imprimer des sous-totaux de pagination; Conversion entre le contenu et les commentaires des cellulesplus
  • Super filtre (enregistrer et appliquer des schémas de filtrage à d'autres feuilles); Tri avancé par mois / semaine / jour, fréquence et plus; Filtre spécial par gras, italique ...
  • Combiner des classeurs et des feuilles de travail; Fusionner les tableaux en fonction des colonnes clés; Diviser les données en plusieurs feuilles; Conversion par lots xls, xlsx et PDFplus
  • Plus de 300 fonctionnalités puissantes. Prend en charge Office / Excel 2007-2019 et 365. Prend en charge toutes les langues. Déploiement facile dans votre entreprise ou organisation. Essai gratuit de 30 jours. Garantie de remboursement de 60 jours.
onglet kte 201905

Office Tab apporte une interface à onglets à Office et simplifie considérablement votre travail

  • Activer l'édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de 50% et réduit des centaines de clics de souris chaque jour!
bas de cabine
Commentaires (36)
Pas encore de notes. Soyez le premier à évaluer!
Ce commentaire a été minimisé par le modérateur sur le site
Je veux coller un contenu spécifique sous la cellule ci-dessous. Comment faire ça? Au lieu d'une ligne vide, je souhaite insérer une valeur dans quelques colonnes.
Ce commentaire a été minimisé par le modérateur sur le site
Salut, je veux insérer plusieurs lignes en fonction de la valeur Ex : je veux insérer 1 ligne vide sous la cellule avec la valeur 2, 2 lignes sous la cellule avec la valeur 3, 3 lignes sous la cellule avec la valeur 4 et ainsi de suite Pouvez-vous S'il vous plait, j'ai besoin de votre aide avec ceci?
Ce commentaire a été minimisé par le modérateur sur le site
Avez-vous déjà obtenu une réponse à cela? J'essaie de faire la même chose.

Ayez une liste des employés avec le nombre de semaines de vacances qu'ils obtiennent. Je veux insérer une ligne pour chaque semaine. Ce sera 1, 2 ou 3 rangées selon le temps qu'ils auront gagné. les #s 1 2 3 sont déjà dans ma feuille de calcul.
Ce commentaire a été minimisé par le modérateur sur le site
Je souhaite insérer des lignes en fonction d'un nombre en utilisant une valeur de cellule dans une feuille de calcul et en insérant des lignes dans une autre feuille de calcul.
Ce commentaire a été minimisé par le modérateur sur le site
Merci à votre message. Mais pouvez-vous décrire votre question avec plus de détails ? Quelles lignes voulez-vous insérer ? Vierge? Et où voulez-vous insérer dans la feuille ? Si vous le pouvez, donnez-moi une capture d'écran. Merci.
Ce commentaire a été minimisé par le modérateur sur le site
Je vous aime. Merci.
Ce commentaire a été minimisé par le modérateur sur le site
C'était amaaaazing !!. Merci mec.
Ce commentaire a été minimisé par le modérateur sur le site
Comment puis-je insérer plus d'une ligne ?
Ce commentaire a été minimisé par le modérateur sur le site
Vous pouvez essayer ce VBA

Sub BlankLine()
'Mise à jour du 20150203
Dim Rng As Range
Dim WorkRng As Range
Dim xInsertNum As Long
' En cas d'erreur, reprendre le suivant
xTitleId = "Kutools pour Excel"
Définir WorkRng = Application.Selection
Définir WorkRng = Application.InputBox("Plage", xTitleId, WorkRng.Address, Type :=8)
Si WorkRng n'est rien, quittez Sub
xInsertNum = Application.InputBox("Le nombre de lignes vides que vous souhaitez insérer ", xTitleId, Type:=1)
Si xInsertNum = False Alors
MsgBox " Le nombre de lignes vides que vous souhaitez insérer ", vbInformation, xTitleId
Exit Sub
Si fin
Définir WorkRng = WorkRng.Columns(1)
xLastRow = WorkRng.Rows.Count
Application.ScreenUpdating = Faux
Pour xRowIndex = xLastRow à 1 étape -1
Set Rng = WorkRng.Range("A" & xRowIndex)
Si Rng.Value = "0" alors
Rng.Resize(xInsertNum).EntireRow.Insert Shift :=xlDown
Si fin
Suivant
Application.ScreenUpdating = True
End Sub
Ce commentaire a été minimisé par le modérateur sur le site
si vous voulez insérer des lignes vides ci-dessous, essayez ceci

Sub BlankLine()
'Mise à jour du 20150203
Dim Rng As Range
Dim WorkRng As Range
Dim xInsertNum As Long
' En cas d'erreur, reprendre le suivant
xTitleId = "Kutools pour Excel"
Définir WorkRng = Application.Selection
Définir WorkRng = Application.InputBox("Plage", xTitleId, WorkRng.Address, Type :=8)
Si WorkRng n'est rien, quittez Sub
xInsertNum = Application.InputBox("Le nombre de lignes vides que vous souhaitez insérer", xTitleId, Type :=1)
Si xInsertNum = False Alors
MsgBox " Le nombre de lignes vides que vous souhaitez insérer ", vbInformation, xTitleId
Exit Sub
Si fin
Définir WorkRng = WorkRng.Columns(1)
xLastRow = WorkRng.Rows.Count
Application.ScreenUpdating = Faux
Pour xRowIndex = xLastRow à 1 étape -1
Set Rng = WorkRng.Range("A" & xRowIndex)
Si Rng.Value = "0" alors
Rng.Offset(1, 0).Resize(xInsertNum).EntireRow.Insert Shift :=xlDown
Si fin
Suivant
Application.ScreenUpdating = True
End Sub

Celui ci-dessous consiste à insérer des lignes au-dessus.
Ce commentaire a été minimisé par le modérateur sur le site
HI Sunny, cette macro fonctionne parfaitement pour moi ; j'ai juste eu à changer la quantité de lignes à 30 et à changer le 0 en texte : "Solde de clôture". Mais maintenant, je veux copier coller une sélection de cellules de 30 lignes de haut dans les 30 lignes vides qui viennent d'être insérées par cette macro. Pouvez-vous suggérer une nouvelle macro (ou un amendement à celle-ci) pour copier et coller une plage dans chaque 30 lignes vides. J'ai nommé la plage à copier et coller 'template'.
Ce commentaire a été minimisé par le modérateur sur le site
J'ai besoin d'une aide énorme sur ce sujet. J'ai 2 colonnes, sur la 1ère j'ai mes données heure 01/01/2016 05:00:00, jours/mois/année heure/minute/secondes et dans la 2 ème colonne les données respectives associées à l'heure.

Mon problème est que je veux ajouter du temps de données entre les lignes car j'ai des écarts de jours. La 1ère ligne est le 01/01/2016 et la 2ème ligne a, par exemple, le 10/01/2016, donc j'ai 9 jours. et ce code ne fonctionne pas pour moi.

Au plaisir d'avoir des commentaires, s'il vous plaît! Merci
Ce commentaire a été minimisé par le modérateur sur le site
Vous pouvez essayer ce VBA

Sous InsérerValeurEntre()
'Mise à jour 20130825
Dim WorkRng As Range
Dim Rng As Range
Dim outArr As Variant
Dim comme variante
Set dic = CreateObject("Scripting.Dictionary")
'En cas d'erreur, reprendre le suivant
xTitleId = "KutoolsforExcel"
Définir WorkRng = Application.Selection
Définir WorkRng = Application.InputBox("Plage", xTitleId, WorkRng.Address, Type :=8)
num1 = WorkRng.Range("A1").Valeur
num2 = WorkRng.Range("A" & WorkRng.Rows.Count).Value
intervalle = num2 - num1
Redim outArr(1 à intervalle + 1, 1 à 2)
Pour chaque Rng dans WorkRng
dic(Rng.Valeur) = Rng.Offset(0, 1).Valeur
Suivant
Pour i = 0 To intervalle
outArr(je + 1, 1) = je + num1
Si dic.Exists(i + num1) Alors
outArr(i + 1, 2) = dic(i + num1)
autre
outArr(i + 1, 2) = ""
Si fin
Suivant
Avec WorkRng.Range("A1").Resize(UBound(outArr, 1), UBound(outArr, 2))
.Valeur = outArr
.Sélectionner
Terminer par
End Sub


Ou si vous avez Kutools for Excel, vous pouvez essayer cette fonction :
Ce commentaire a été minimisé par le modérateur sur le site
Merci beaucoup, j'ai essayé les deux, le 1er depuis que j'ai environ 500 lignes de données, je le fais pour les 500 lignes et ne fait rien, je pense que cela a peut-être une limitation sur les lignes à utiliser, et lorsque je sélectionne uniquement les 5 premières lignes, par exemple, il ne crée pas les lignes manquantes, remplace les lignes pour les données manquantes.

Un autre problème que j'ai est que mes données de temps ont aussi le Jour/Mois/Année HH : MM : SS
Ce commentaire a été minimisé par le modérateur sur le site
De 2 à 3, cela crée les données manquantes que je veux ok, mais la valeur du 03/01/2016 est éliminée et il y a des données temporelles qui sont éliminées quelque chose que je ne veux pas non plus
Ce commentaire a été minimisé par le modérateur sur le site
Désolé, le code VBA ne vous a pas aidé, je ne trouve pas la méthode qui peut fonctionner pour le format de date et d'heure. Si vous trouvez enfin la solution, pourriez-vous me la communiquer ? Merci.
Ce commentaire a été minimisé par le modérateur sur le site
Bonjour à nouveau Sunny, j'ai réussi à modifier le code (je change la ligne num1 en A2 et With WorkRng.Range("A2:A100000").Resize(UBound(outArr, 1), UBound(outArr, 2) ):


Sous InsérerValeurEntre()
'Mise à jour 20130825
Dim WorkRng As Range
Dim Rng As Range
Dim outArr As Variant
Dim comme variante
Set dic = CreateObject("Scripting.Dictionary")
'En cas d'erreur, reprendre le suivant
xTitleId = "KutoolsforExcel"
Définir WorkRng = Application.Selection
Définir WorkRng = Application.InputBox("Plage", xTitleId, WorkRng.Address, Type :=8)
num1 = WorkRng.Range("A2").Valeur
num2 = WorkRng.Range("A" & WorkRng.Rows.Count).Value
intervalle = num2 - num1
Redim outArr(1 à intervalle + 1, 1 à 2)
Pour chaque Rng dans WorkRng
dic(Rng.Valeur) = Rng.Offset(0, 1).Valeur
Suivant
Pour i = 0 To intervalle
outArr(je + 1, 1) = je + num1
Si dic.Exists(i + num1) Alors
outArr(i + 1, 2) = dic(i + num1)
autre
outArr(i + 1, 2) = ""
Si fin
Suivant
Avec WorkRng.Range("A2:A100000").Resize(UBound(outArr, 1), UBound(outArr, 2))
.Valeur = outArr
.Sélectionner
Terminer par
End Sub



Je vous montre les graphiques, ça ne marche pas à 100% car ça ne crée pas le temps de A1 à A2
Ce commentaire a été minimisé par le modérateur sur le site
Voici ma question et c'est très difficile je suppose .. existe-t-il un code vba qui ajoute une nouvelle ligne sous une colonne filtrée et copie uniquement les trois premières cellules dans la nouvelle ligne ajoutée et continue jusqu'à ce que l'utilisateur arrête de frapper "entrer" et défiltrer les cellules filtrées ?
Ce commentaire a été minimisé par le modérateur sur le site
Votre question est quelque peu difficile et complexe, vous pouvez poser la question dans notre forum, peut-être que quelqu'un pourra vous répondre. https://www.extendoffice.com/forum.html
Ce commentaire a été minimisé par le modérateur sur le site
Salut, je veux juste demander comment ajouter une ligne si la condition est que l'ajout d'une ligne doit être fait lorsqu'une cellule contient déjà des données (c'est pour un classeur Excel avec beaucoup de feuilles :) Merci !
Ce commentaire a été minimisé par le modérateur sur le site
peut-être que ce code vba peut vous aider. Il ajoutera des lignes si la ligne ci-dessus n'est pas vide

Sous-aide()
Dim count As Long
For count = ActiveSheet.UsedRange.Rows.count To 1 Step -1
Si Information.IsEmpty(Cells(count, 1)) = False Then Rows(count + 1).Insert
Décompte suivant
End Sub
Ce commentaire a été minimisé par le modérateur sur le site
Salut, j'essaie d'utiliser ce code pour entrer une ligne lorsque les 4 premiers chiffres d'une cellule changent (si c'est même possible)

par exemple,
2222A
2222B
2223K


la ligne sera insérée après 2222B car le 3ème chiffre est un 3 et non un 2

Merci les gars!
Ce commentaire a été minimisé par le modérateur sur le site
Salut, merci pour cela, mais j'ai un autre scénario où je dois insérer une cellule cingle sous la valeur qui n'est pas zéro. Appréciez toute suggestion.
Ce commentaire a été minimisé par le modérateur sur le site
Salut, Gina, je viens de trouver le code pour insérer une ligne vide au-dessus de la cellule qui n'est pas vide, peut-être que quelqu'un peut l'ajuster pour répondre à vos besoins.

Sous Insert_Rows()
Dim LR As Long, r As Long

Application.ScreenUpdating = Faux
LR = Range("A" & Rows.Count).End(xlUp).Row
Pour r = LR To 1 Step -1
Si Len(Plage("A" & r).Valeur) > 0 Alors
Lignes(r).Insérer
Si fin
Suivant r
Application.ScreenUpdating = True
End Sub

viens de https://www.mrexcel.com/forum/excel-questions/548675-adding-blank-line-above-row-non-blank-cell.html
Ce commentaire a été minimisé par le modérateur sur le site
Bonjour, c'est très utile. Et si je voulais ajouter deux lignes ci-dessous et que je voulais plus de valeurs. Par exemple, je souhaite ajouter deux lignes après la valeur 26/04/2019, puis deux lignes après le 03/04/2019, et la liste continue. Comment puis-je continuer à ajouter au vba? Désolé je suis encore débutant. Merci d'avance.
Ce commentaire a été minimisé par le modérateur sur le site
Bonjour, Safa, vous pouvez peut-être essayer l'utilitaire d'insertion de lignes/colonnes vides de Kutools.
Ce commentaire a été minimisé par le modérateur sur le site
Sub BlankLine()
'Mise à jour du 20150203
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Définir WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type : = 8)
Définir WorkRng = WorkRng.Columns(1)
xLastRow = WorkRng.Rows.Count
Application.ScreenUpdating = Faux
Pour xRowIndex = xLastRow à 1 pas - 1
Set Rng = WorkRng.Range("A" & xRowIndex)
Si Rng.Value = "0" alors
Rng.EntireRow.Insert Shift : = xlDown
Si fin
Suivant
Application.ScreenUpdating = True
End Sub


J'ai besoin que cela fonctionne à chaque fois que je mets quelque chose dans la cellule, et aussi avec plus de variables. Ce que je veux dire, c'est que si je mets 2 dans la cellule, j'en ai besoin pour insérer 2 lignes et pas seulement 1.
Ce commentaire a été minimisé par le modérateur sur le site
J'ai besoin de la macro pour ajouter des lignes basées sur une colonne de quantité où si la quantité est supérieure à 1, elle insère le nombre de lignes -1. Si la quantité est de 5, il insère 4 lignes en dessous et remplit les données et change la quantité appelée de 5 à 1 chaque ligne. Passer toute la quantité 1.
Ce commentaire a été minimisé par le modérateur sur le site
Dites-moi le code où je veux ajouter un nombre particulier de lignes en fonction d'une valeur de cellule. par exemple, si la cellule contient le chiffre 18, automatiquement 18 lignes doivent être ajoutées où je veux et le reste de la table/cellule doit se déplacer vers le bas.
Ce commentaire a été minimisé par le modérateur sur le site
Merci beaucoup pour cela, vraiment un gain de temps considérable. Serait-il possible d'ajouter du code qui me permet d'insérer du texte dans la nouvelle ligne. Par exemple, j'insère de nouvelles lignes basées sur la valeur cible 'x', puis je veux ajouter la valeur de texte 'y' dans la cellule sous la valeur cible 'x'. Est-ce possible?
Ce commentaire a été minimisé par le modérateur sur le site
Bonjour. La macro fonctionne pour moi, mais existe-t-il un moyen de toujours définir la plage/les paramètres sur la colonne J sans que la zone de saisie ne s'affiche du tout ? Je voudrais qu'il saute l'étape de la boîte de saisie à venir. De plus, je me suis assuré que, juste avant cette macro, la dernière ligne de ma macro précédente est Range("J:J").Sélectionnez pour vous assurer que toute la colonne J est déjà sélectionnée.
C'est ce que j'ai utilisé jusqu'à présent.

Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "Cliquez sur OK pour continuer"
Définir WorkRng = Application.Selection
Définir WorkRng = Application.InputBox("Plage", xTitleId, WorkRng.Address, Type :=8)
Définir WorkRng = WorkRng.Columns(1)
Envoyer les clés "~"
xLastRow = WorkRng.Rows.Count
Application.ScreenUpdating = Faux
Pour xRowIndex = xLastRow à 1 étape -1
Set Rng = WorkRng.Range("A" & xRowIndex)
Si Rng.Value = "Nouvelle ligne GMS" Alors
Rng.EntireRow.Insert Shift :=xlDown
Si fin
Suivant


J'ai essayé d'expérimenter en utilisant la commande SendKeys "~" entre certaines des étapes pour essayer de l'amener à appuyer sur Entrée automatiquement lorsque la zone de saisie apparaît, mais cela n'a pas fonctionné non plus. Je ne savais pas exactement où utiliser la commande SendKeys dans la macro ou si cela fonctionnerait même avec une zone de saisie !
Ce commentaire a été minimisé par le modérateur sur le site
s'il vous plaît, aidez-moi à avoir des données. J'ai des données de temps d'un mois, en ce sens que je dois insérer des lignes vides en fonction du temps d'échappement
Ce commentaire a été minimisé par le modérateur sur le site
Salut, hr.babu08, désolé la réponse est tardive. Je suppose que vous voulez insérer des lignes vides ou faire une marque pour les données de séquence manquantes, si c'est le cas, vous pouvez essayer Kutools for Excel's Find Missing Sequence Number feature.Voici le didacticiel sur la fonctionnalité: https://www.extendoffice.com/product/kutools-for-excel/excel-find-missing-numbers-in-sequence.htmlIf vous souhaitez d'autres méthodes pour insérer des lignes vides pour la séquence manquante, veuillez visiter :https://www.extendoffice.com/documents/excel/3522-excel-find-missing-dates.html</div>;
Ce commentaire a été minimisé par le modérateur sur le site
Hi,
Ce marco peut-il être utilisé/modifié pour les cellules colorées ?
Je dois insérer au moins 10 lignes au-dessus de la fin de chaque série qui sont colorées.
Thx!
Ce commentaire a été minimisé par le modérateur sur le site
J'ai besoin d'ajouter des lignes particulières avec des valeurs pour des contenus de cellules spécifiques, mais je ne sais pas comment le faire sans avoir à le faire manuellement pour plus de 3800 lignes

Ex : A1 = Nœud1
J'ai besoin d'insérer une ligne et d'entrer la valeur Scanner
Entrez une autre ligne et entrez la valeur Imprimante
une autre rangée avec la valeur CD.
Etc.
Ce commentaire a été minimisé par le modérateur sur le site
Bonjour Chris, voici un VBA qui peut vous aider à insérer automatiquement trois lignes (Scanner, Imprimante, CD) lorsque la valeur est égale à Node1.
Sub BlankLine()
'ByExtendoffice
Dim Rng As Range

Dim WorkRng As Range

Dim xRngI As Range

On Error Resume Next

xTitleId = "KutoolsforExcel"

Set WorkRng = Application.Selection

Set WorkRng = Application.InputBox("Select a range", xTitleId, WorkRng.Address, Type:=8)

Set WorkRng = WorkRng.Columns(1)

xLastRow = WorkRng.Rows.Count

Application.ScreenUpdating = False

For xRowIndex = xLastRow To 1 Step -1

  Set Rng = WorkRng.Range("A" & xRowIndex)

  If Rng.Value = "Node1" Then

    Rng.Offset(1, 0).EntireRow.Insert Shift:=xlDown

    Rng.Offset(1, 0).EntireRow.Insert Shift:=xlDown

    Rng.Offset(1, 0).EntireRow.Insert Shift:=xlDown

    Rng.Offset(1, 0).Value = "Scanner"

    Rng.Offset(2, 0).Value = "Printer"

    Rng.Offset(3, 0).Value = "CD"

  End If

Next

Application.ScreenUpdating = True

End Sub

Veuillez me faire savoir si cela fonctionne pour vous.
Il n'y a pas encore de commentaires postés ici
Laisser vos commentaires
Publier en tant qu'invité
×
Évaluez cet article:
0   Personnages
Emplacements suggérés