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

Wie füge ich eine Zeile basierend auf dem Zellenwert in Excel automatisch ein?

doc-insert-row-based-on-value-1
Angenommen, Sie haben einen Datenbereich und möchten leere Zeilen über oder unter einem bestimmten Wert in Excel automatisch einfügen, z. B. Zeilen unter Null automatisch einfügen (siehe Abbildung unten). In Excel gibt es keine direkte Möglichkeit, diese Aufgabe zu lösen, aber ich kann einen Makrocode einführen, mit dem Sie Zeilen basierend auf einem bestimmten Wert in Excel automatisch einfügen können.
Fügen Sie die folgende Zeile basierend auf dem Zellenwert mit VBA ein

Fügen Sie die obige Zeile basierend auf dem Zellenwert mit Kutools for Excel ein gute Idee3

Führen Sie die folgenden Schritte aus, um eine Zeile basierend auf dem Zellenwert durch Ausführen von VBA einzufügen:

1. Drücken Sie Alt + F11 Tasten gleichzeitig und a Microsoft Visual Basic für Applikationen Fenster öffnet sich.

2 Klicken Insert > ModulFügen Sie dann den folgenden VBA-Code in das Popping ein Modul Fenster.

VBA: Fügen Sie die folgende Zeile basierend auf dem Zellenwert ein.

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 Klicken F5 Schlüssel oder die Run Klicken Sie auf die Schaltfläche, wird ein Dialogfeld geöffnet, und wählen Sie die Spalte aus, die Null enthält. Siehe Screenshot:
doc-insert-row-based-on-value-2

4 Klicken OK. Dann werden leere Zeilen unterhalb des Nullwerts eingefügt.
doc-insert-row-based-on-value-3

Tipp:

1. Wenn Sie Zeilen basierend auf einem anderen Wert einfügen möchten, können Sie Änderungen vornehmen 0 auf einen beliebigen Wert in der VBA: Wenn Rng.Value = "0", dann.

2. Wenn Sie Zeilen über Null oder einen anderen Wert einfügen möchten, können Sie den folgenden vba-Code verwenden.

VBA: Zeile über Nullwert einfügen:

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


Wenn Sie mit VBA nicht vertraut sind, können Sie es versuchen Kutools for Excel's Wählen Sie Bestimmte Zellen aus Dienstprogramm, und fügen Sie dann die obigen Zeilen ein.

Kutools for Excel, mit mehr als 300 praktische Funktionen erleichtern Ihre Arbeit. 

Nach der Installation Kutools für Excel, bitte gehen Sie wie folgt vor:(Kutools für Excel jetzt kostenlos herunterladen!)

1. Wählen Sie die Liste aus, aus der Sie die spezifischen Zellen herausfinden möchten, und klicken Sie auf Kutoolen > Auswählen > Wählen Sie Bestimmte Zellen aus. Siehe Screenshot:
doc Zeile einfügen basierend auf Wert 9

2. Überprüfen Sie im Popup-Dialogfeld Ganze Reihe Option, und gehen Sie dann zur Auswahl Equals von Spezifischer Typ Liste und geben Sie dann den gewünschten Wert in das rechte Textfeld ein. Siehe Screenshot:
doc Zeile einfügen basierend auf Wert 6

3 Klicken Okund ein Dialogfeld wird angezeigt, das Sie an die Anzahl der ausgewählten Zeilen erinnert. Schließen Sie es einfach.

4. Platzieren Sie den Cursor auf einer ausgewählten Zeile und klicken Sie mit der rechten Maustaste, um sie auszuwählen Insert aus dem Kontextmenü. Siehe Screenshot:
doc Zeile einfügen basierend auf Wert 7

Jetzt werden die Zeilen oben basierend auf einem bestimmten Wert eingefügt.
doc Zeile einfügen basierend auf Wert 8


Relative Artikel:


Die besten Tools für die Office-Produktivität

Kutools for Excel löst die meisten Ihrer Probleme und erhöht Ihre Produktivität um 80%

  • Wiederverwendung: Schnell einfügen komplexe Formeln, Diagramme und alles, was du vorher benutzt hast; Zellen verschlüsseln mit Passwort; Mailingliste erstellen und E-Mails senden ...
  • Super Formelriegel (leicht mehrere Textzeilen und Formeln bearbeiten); Layout lesen (leichtes Lesen und Bearbeiten einer großen Anzahl von Zellen); In gefilterten Bereich einfügen...
  • Zellen / Zeilen / Spalten zusammenführen ohne Daten zu verlieren; Inhalt geteilter Zellen; Kombinieren Sie doppelte Zeilen / Spalten... doppelte Zellen verhindern; Bereiche vergleichen...
  • Wählen Sie Duplizieren oder Eindeutig Reihen; Wählen Sie Leere Zeilen (alle Zellen sind leer); Super Find und Fuzzy Find in vielen Arbeitsmappen; Zufällige Auswahl ...
  • Exakte Kopie Mehrere Zellen ohne Änderung der Formelreferenz; Referenzen automatisch erstellen zu mehreren Blättern; Aufzählungszeichen einfügen, Kontrollkästchen und mehr ...
  • Text extrahieren, Text hinzufügen, Nach Position entfernen, Leerzeichen entfernen;; Paging-Zwischensummen erstellen und drucken; Inhalt und Kommentare zwischen Zellen konvertieren...
  • Superfilter (Speichern und Anwenden von Filterschemata auf andere Blätter); Erweiterte Sortierung nach Monat / Woche / Tag, Häufigkeit und mehr; Spezialfilter fett, kursiv ...
  • Kombinieren Sie Arbeitsmappen und Arbeitsblätter;; Tabellen basierend auf Schlüsselspalten zusammenführen; Daten in mehrere Blätter aufteilen; Batch-Konvertierung von xls, xlsx und PDF...
  • Mehr als 300 leistungsstarke Funktionen. Unterstützt Office / Excel 2007-2021 und 365. Unterstützt alle Sprachen. Einfache Bereitstellung in Ihrem Unternehmen oder Ihrer Organisation. 30-tägige kostenlose Testversion mit allen Funktionen. 60 Tage Geld-zurück-Garantie.
kte tab 201905

Office Tab Bringt die Oberfläche mit Registerkarten in Office und erleichtert Ihnen die Arbeit erheblich

  • Aktivieren Sie das Bearbeiten und Lesen von Registerkarten in Word, Excel und PowerPoint, Publisher, Access, Visio und Project.
  • Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters und nicht in neuen Fenstern.
  • Steigert Ihre Produktivität um 50 % und reduziert jeden Tag Hunderte von Mausklicks für Sie!
officetab unten
Kommentare (43)
Noch keine Bewertungen. Bewerten Sie als Erster!
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Ich möchte bestimmten Inhalt unter der unteren Zelle einfügen. Wie geht das? Anstelle einer leeren Zeile möchte ich einen Wert in einige Spalten einfügen.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo, ich möchte mehrere Zeilen basierend auf dem Wert einfügen Bsp.: Ich möchte 1 leere Zeile unter der Zelle mit dem Wert 2, 2 Zeilen unter der Zelle mit dem Wert 3, 3 Zeilen unter der Zelle mit dem Wert 4 usw. einfügen Bitte helfen Sie mir dabei?
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hast du darauf jemals eine Antwort bekommen? Ich versuche das Gleiche zu tun.

Führen Sie eine Liste der Mitarbeiter mit der Anzahl der Wochen Urlaub, die sie erhalten. Ich möchte für jede Woche eine Zeile einfügen. Es werden 1, 2 oder 3 Reihen sein, je nachdem, wie viel Zeit sie verdient haben. die #s 1 2 3 sind bereits in meiner Tabelle.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Ich möchte Zeilen basierend auf einer Zählung einfügen, indem ich einen Zellenwert in einer Tabelle verwende und Zeilen in eine andere Tabelle einfüge.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Dank Ihrer Nachricht. Aber können Sie Ihre Frage genauer beschreiben? Welche Zeilen möchten Sie einfügen? Leer? Und wo möchten Sie in das Blatt einfügen? Wenn du kannst, gib mir einen Screenshot. Danke.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Ich liebe dich. Danke.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Das war amaaaazing!!. Danke, Mann.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Wie kann ich mehr als eine Zeile einfügen?
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Sie können dieses VBA ausprobieren

Sub BlankLine()
'Updateby20150203
Dim Rng As Range
Dim WorkRng As Range
Dim xInsertNum As Long
' Bei Fehler Fortsetzen als Nächstes
xTitleId = "Kutools für Excel"
Legen Sie WorkRng = Application.Selection fest
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Wenn WorkRng nichts ist, dann beenden Sie Sub
xInsertNum = Application.InputBox("Die Anzahl der leeren Zeilen, die Sie einfügen möchten", xTitleId, Type:=1)
Wenn xInsertNum = False Then
MsgBox "Die Anzahl der leeren Zeilen, die Sie einfügen möchten", vbInformation, xTitleId
Exit Sub
End If
Set WorkRng = WorkRng.Columns(1)
xLastRow = WorkRng.Rows.Count
Application.ScreenUpdating = False
Für xRowIndex = xLastRow bis 1 Schritt -1
Set Rng = WorkRng.Range("A" & xRowIndex)
Wenn Rng.Value = "0", dann
Rng.Resize(xInsertNum).EntireRow.Insert Shift:=xlDown
End If
Weiter
Application.ScreenUpdating = True
End Sub
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Wenn Sie unten leere Zeilen einfügen möchten, versuchen Sie dies

Sub BlankLine()
'Updateby20150203
Dim Rng As Range
Dim WorkRng As Range
Dim xInsertNum As Long
' Bei Fehler Fortsetzen als Nächstes
xTitleId = "Kutools für Excel"
Legen Sie WorkRng = Application.Selection fest
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Wenn WorkRng nichts ist, dann beenden Sie Sub
xInsertNum = Application.InputBox("Die Anzahl der leeren Zeilen, die Sie einfügen möchten", xTitleId, Type:=1)
Wenn xInsertNum = False Then
MsgBox "Die Anzahl der leeren Zeilen, die Sie einfügen möchten", vbInformation, xTitleId
Exit Sub
End If
Set WorkRng = WorkRng.Columns(1)
xLastRow = WorkRng.Rows.Count
Application.ScreenUpdating = False
Für xRowIndex = xLastRow bis 1 Schritt -1
Set Rng = WorkRng.Range("A" & xRowIndex)
Wenn Rng.Value = "0", dann
Rng.Offset(1, 0).Resize(xInsertNum).EntireRow.Insert Shift:=xlDown
End If
Weiter
Application.ScreenUpdating = True
End Sub

Die untere dient zum Einfügen von Zeilen darüber.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
HI Sunny, dieses Makro funktioniert perfekt für mich; Ich musste nur die Anzahl der Zeilen auf 30 ändern und die 0 in Text ändern: "Endsaldo". Aber jetzt möchte ich eine Auswahl von Zellen kopieren, die 30 Zeilen hoch ist, in die 30 leeren Zeilen, die gerade von diesem Makro eingefügt wurden. Können Sie ein neues Makro (oder eine Änderung zu diesem) vorschlagen, um einen Bereich in alle 30 Leerzeilen zu kopieren und einzufügen? Ich habe den Bereich zum Kopieren und Einfügen „Vorlage“ genannt.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Ich brauche große Hilfe zu diesem Thema. Ich habe 2 Spalten, in der 1. habe ich meine Daten Zeit 01 01:2016:05, Tage/Monate/Jahr Stunde/Minute/Sekunde und in der 00. 00. Spalte die jeweiligen Daten die der Zeit zugeordnet sind.

Mein Problem ist, dass ich Datenzeit zwischen Zeilen hinzufügen möchte, da ich Tageslücken habe. 1. Zeile ist der 01 und die 01. Zeile hat zB den 2016, also habe ich 2 Tage. und dieser Code funktioniert bei mir nicht.

Ich freue mich auf ein Feedback, bitte! Vielen Dank
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Sie können dieses VBA ausprobieren

Sub InsertValueBetween()
'Update 20130825
Dim WorkRng As Range
Dim Rng As Range
Dim outArr As Variant
Dim dic als Variante
Setze dic = CreateObject("Scripting.Dictionary")
'Bei Fehler als nächstes fortfahren
xTitleId = "KutoolsforExcel"
Legen Sie WorkRng = Application.Selection fest
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
num1 = WorkRng.Range("A1").Wert
num2 = WorkRng.Range("A" & WorkRng.Rows.Count).Wert
Intervall = num2 - num1
ReDim outArr(1 bis Intervall + 1, 1 bis 2)
Für jeden Rng in WorkRng
dic(Rng.Wert) = Rng.Offset(0, 1).Wert
Weiter
Für i = 0 bis Intervall
outArr(i + 1, 1) = i + num1
If dic.Exists(i + num1) Then
outArr(i + 1, 2) = dic(i + num1)
sonst
outArr(i + 1, 2) = ""
End If
Weiter
Mit WorkRng.Range("A1").Resize(UBound(outArr, 1), UBound(outArr, 2))
.Wert = outArr
.Wählen
Ende mit
End Sub


Oder wenn Sie Kutools für Excel haben, können Sie diese Funktion ausprobieren:
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Vielen Dank, ich habe beide ausprobiert, die erste, da ich etwa 1 Datenzeilen habe, ich mache das für alle 500 Zeilen und mache nichts, ich denke, es hat vielleicht eine Beschränkung der zu verwendenden Zeilen, und Wenn ich zum Beispiel nur die ersten 500 Zeilen auswähle, werden die fehlenden Zeilen nicht erstellt, sondern die Zeilen für die fehlenden Daten ersetzt.

Ein weiteres Problem, das ich habe, ist, dass meine Zeitdaten auch den Tag/Monat/Jahr HH: MM: SS enthalten
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Von 2 bis 3 werden die fehlenden Daten erstellt, die ich möchte, ok, aber der Wert des 03 wird eliminiert, und es gibt einige Zeitdaten, die eliminiert werden, was ich auch nicht möchte
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Entschuldigung, der VBA-Code hat Ihnen nicht geholfen, ich kann die Methode nicht finden, die für das Datums- und Zeitformat funktionieren kann. Wenn Sie endlich die Lösung finden, können Sie mir Bescheid geben? Danke.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo nochmal Sunny, ich hatte einige Erfolge beim Bearbeiten des Codes (ich ändere die Zeile num1 in A2 und With WorkRng.Range("A2:A100000").Resize(UBound(outArr, 1), UBound(outArr, 2) ):


Sub InsertValueBetween()
'Update 20130825
Dim WorkRng As Range
Dim Rng As Range
Dim outArr As Variant
Dim dic als Variante
Setze dic = CreateObject("Scripting.Dictionary")
'Bei Fehler als nächstes fortfahren
xTitleId = "KutoolsforExcel"
Legen Sie WorkRng = Application.Selection fest
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
num1 = WorkRng.Range("A2").Wert
num2 = WorkRng.Range("A" & WorkRng.Rows.Count).Wert
Intervall = num2 - num1
ReDim outArr(1 bis Intervall + 1, 1 bis 2)
Für jeden Rng in WorkRng
dic(Rng.Wert) = Rng.Offset(0, 1).Wert
Weiter
Für i = 0 bis Intervall
outArr(i + 1, 1) = i + num1
If dic.Exists(i + num1) Then
outArr(i + 1, 2) = dic(i + num1)
sonst
outArr(i + 1, 2) = ""
End If
Weiter
Mit WorkRng.Range("A2:A100000").Resize(UBound(outArr, 1), UBound(outArr, 2))
.Wert = outArr
.Wählen
Ende mit
End Sub



Ich zeige Ihnen die Grafiken, es funktioniert nicht 100%, weil es die Zeit von A1 bis A2 nicht erstellt
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hier ist meine Frage, und es ist eine sehr schwierige, denke ich. Gibt es einen VBA-Code, der eine neue Zeile unter einer gefilterten Spalte hinzufügt und nur die ersten drei Zellen in die hinzugefügte neue Zeile kopiert und so fortfährt, bis der Benutzer aufhört zu schlagen? "betreten" und die gefilterten Zellen unfiltern?
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Ihre Frage ist etwas schwierig und komplex, Sie können die Frage in unserem Forum stellen, vielleicht kann Ihnen jemand antworten. https://www.extendoffice.com/forum.html
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo, ich möchte nur fragen, wie man eine Zeile hinzufügt, wenn die Bedingung lautet, dass eine Zeile hinzugefügt werden sollte, wenn eine Zelle bereits Daten enthält (es ist für eine Excel-Arbeitsmappe mit vielen Blättern :) Danke!
Dieser Kommentar wurde vom Moderator auf der Website minimiert
vielleicht kann dir dieser VBA-Code helfen. Es werden Zeilen hinzugefügt, wenn die obige Zeile nicht leer ist

Sub hilft ()
Dim zählen als lang
For count = ActiveSheet.UsedRange.Rows.count To 1 Step -1
If Information.IsEmpty(Cells(count, 1)) = False Then Rows(count + 1).Insert
Nächste Zählung
End Sub
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo, ich versuche, diesen Code zu verwenden, um eine Zeile einzugeben, wenn sich die ersten 4 Ziffern in einer Zelle ändern (wenn das überhaupt möglich ist).

zum Beispiel,
2222A
2222B
2223K


die Zeile wird nach 2222B eingefügt, da die 3. Zahl eine 3 und keine 2 ist

Danke Leute!!
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo, danke dafür, aber ich habe ein anderes Szenario, in dem ich eine Cingle-Zelle unter dem Wert einfügen muss, der nicht Null ist. Schätzen Sie jeden Vorschlag.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo, Gina, ich finde gerade den Code zum Einfügen einer leeren Zeile über der Zelle, die nicht leer ist. Vielleicht kann ihn jemand an Ihre Bedürfnisse anpassen.

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

Application.ScreenUpdating = False
LR = Range("A" & Rows.Count).End(xlUp).Row
Für r = LR bis 1 Schritt -1
If Len(Range("A" & r).Value) > 0 Then
Zeilen(r).Einfügen
End If
Nächste r
Application.ScreenUpdating = True
End Sub

komme aus https://www.mrexcel.com/forum/excel-questions/548675-adding-blank-line-above-row-non-blank-cell.html
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo, das ist sehr hilfreich. Was wäre, wenn ich zwei Zeilen unten hinzufügen und mehr Werte hinzufügen möchte? Zum Beispiel möchte ich zwei Zeilen nach dem Wert 26 und dann zwei Zeilen nach dem 04 hinzufügen, und die Liste geht weiter. Wie füge ich immer wieder etwas zum VBA hinzu? Sorry bin noch Anfänger. Danke im Voraus.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo, Safa, vielleicht kannst du Kutools' Dienstprogramm zum Einfügen leerer Zeilen/Spalten ausprobieren.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Sub BlankLine()
'Updateby20150203
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Legen Sie WorkRng = Application.Selection fest
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type: = 8)
Set WorkRng = WorkRng.Columns(1)
xLastRow = WorkRng.Rows.Count
Application.ScreenUpdating = False
Für xRowIndex = xLastRow bis 1 Schritt - 1
Set Rng = WorkRng.Range("A" & xRowIndex)
Wenn Rng.Value = "0", dann
Rng.EntireRow.Insert Shift: = xlDown
End If
Weiter
Application.ScreenUpdating = True
End Sub


Ich brauche das, um jedes Mal zu funktionieren, wenn ich etwas in die Zelle stecke, und auch mit mehr Variablen. Was ich meine ist, dass wenn ich 2 in die Zelle setze, ich brauche, um 2 Zeilen einzufügen und nicht nur 1.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Ich brauche das Makro, um Zeilen basierend auf einer Mengenspalte hinzuzufügen, wobei, wenn die Menge größer als 1 ist, die Anzahl der Zeilen -1 eingefügt wird. Wenn die Menge 5 ist, fügt es 4 Zeilen darunter ein und füllt die Daten aus und ändert die aufgerufene Menge von 5 auf 1 in jeder Zeile. Überspringen Sie alle Menge 1.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Sagen Sie mir den Code, wo ich eine bestimmte Anzahl von Zeilen basierend auf einem Zellenwert hinzufügen möchte. Wenn die Zelle beispielsweise die Ziffer 18 enthält, sollten automatisch 18 Zeilen an der gewünschten Stelle hinzugefügt und der Rest der Tabelle / Zelle nach unten verschoben werden.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Vielen Dank dafür, wirklich eine enorme Zeitersparnis. Wäre es möglich, einen Code hinzuzufügen, der es mir ermöglicht, Text in die neue Zeile einzufügen. Zum Beispiel füge ich neue Zeilen basierend auf dem Zielwert „x“ ein, dann möchte ich den Textwert „y“ in der Zelle unter dem Zielwert „x“ hinzufügen. Ist das möglich?
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo. Das Makro funktioniert für mich, aber gibt es eine Möglichkeit, den Bereich/die Parameter immer auf Spalte J zu setzen, ohne dass das Eingabefeld überhaupt erscheint? Ich möchte, dass der Schritt des Eingabefelds übersprungen wird. Außerdem habe ich sichergestellt, dass direkt vor diesem Makro die letzte Zeile meines vorherigen Makros Range("J:J") ist. Wählen Sie aus, um sicherzustellen, dass die gesamte J-Spalte bereits ausgewählt ist.
Das habe ich bisher verwendet.

Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "Klicken Sie auf OK, um fortzufahren"
Legen Sie WorkRng = Application.Selection fest
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Set WorkRng = WorkRng.Columns(1)
SendKeys "~"
xLastRow = WorkRng.Rows.Count
Application.ScreenUpdating = False
Für xRowIndex = xLastRow bis 1 Schritt -1
Set Rng = WorkRng.Range("A" & xRowIndex)
If Rng.Value = "New GMS Line" Then
Rng.EntireRow.Insert Shift:=xlDown
End If
Weiter


Ich habe versucht, zwischen einigen Schritten mit dem SendKeys-Befehl "~" zu experimentieren, um zu versuchen, die Eingabetaste automatisch zu drücken, wenn das Eingabefeld angezeigt wird, aber das hat auch nicht funktioniert. Ich war mir nicht sicher, wo genau ich den SendKeys-Befehl im Makro verwenden sollte oder ob er überhaupt mit einem Eingabefeld funktionieren würde!
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Bitte helfen Sie mir, eine Daten zu haben. Ich habe einen Monat Zeitdaten, in denen ich eine leere Zeile entsprechend der Escape-Zeit einfügen muss
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hi, hr.babu08, entschuldige die späte Antwort. Ich schätze, Sie möchten leere Zeilen einfügen oder die fehlenden Sequenzdaten markieren. Wenn dies der Fall ist, können Sie die Funktion „Fehlende Sequenznummer suchen“ von Kutools für Excel ausprobieren. Hier ist das Tutorial zu dieser Funktion: https://www.extendoffice.com/product/kutools-for-excel/excel-find-missing-numbers-in-sequence.htmlIf Wenn Sie andere Methoden zum Einfügen leerer Zeilen für fehlende Sequenzen wünschen, besuchen Sie bitte:https://www.extendoffice.com/documents/excel/3522-excel-find-missing-dates.html</div>;
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo,
Kann dieser Marco für farbige Zellen verwendet/geändert werden?
Ich muss mindestens 10 Zeilen über dem Ende jeder Serie einfügen, die farbig sind.
Thx!
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Ich muss bestimmte Zeilen mit Werten für bestimmte Zelleninhalte hinzufügen, bin mir aber nicht sicher, wie ich dies tun soll, ohne dies manuell für über 3800 Zeilen tun zu müssen

Beispiel: A1 = Knoten1
Ich muss eine Zeile einfügen lassen und darin den Wert Scanner eingeben
Geben Sie eine weitere Zeile ein und geben Sie den Wert Drucker ein
eine weitere Zeile mit Wert CD.
Usw.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo, Chris, hier ist ein VBA, der Ihnen helfen kann, automatisch drei Zeilen (Scanner, Drucker, CD) einzufügen, wenn der Wert gleich Node1 ist.
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

Bitte lassen Sie mich wissen, ob es für Sie funktioniert.
Es sind noch keine Kommentare vorhanden
Mehr laden

Folgen Sie uns

Copyright © 2009 - www.extendoffice.com. | Alle Rechte vorbehalten. Unterstützt von ExtendOffice. | Sitemap
Microsoft und das Office-Logo sind Marken oder eingetragene Marken der Microsoft Corporation in den USA und / oder anderen Ländern.
Geschützt durch Sectigo SSL