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

Cum se introduce automat un rând nou gol prin butonul de comandă în Excel?

În multe cazuri, poate fi necesar să introduceți un rând nou gol într-o poziție specificată a foii de lucru. În acest articol, vă vom arăta cum să inserați automat un rând nou gol făcând clic pe un buton de comandă în Excel.

Introduceți automat un rând nou gol prin butonul de comandă


Introduceți automat un rând nou gol prin butonul de comandă

Puteți rula următorul cod VBA pentru a insera un rând nou gol făcând clic pe un buton de comandă. Vă rugăm să faceți următoarele.

1. În primul rând, trebuie să inserați un buton de comandă. Vă rugăm să faceți clic pe Dezvoltator > Insera > Buton de comandă (control ActiveX). Vedeți captura de ecran:

2. Apoi trageți un buton de comandă în foaia de lucru pe care trebuie să adăugați rânduri noi, faceți clic dreapta pe butonul de comandă și faceți clic pe Proprietăţi din meniul cu clic dreapta.

3. În Proprietăţi caseta de dialog, introduceți textul afișat al butonului de comandă în Legendă caseta de sub clasificate , apoi închideți caseta de dialog.

Puteți vedea textul afișat al butonului de comandă este modificat așa cum este prezentat mai jos.

4. Faceți clic din nou pe butonul de comandă, apoi faceți clic pe Afișați codul din meniul cu clic dreapta.

5. Apoi Microsoft Visual Basic pentru aplicații fereastra, înlocuiți codul original cu codul VBA de mai jos în Cod fereastră.

Cod VBA: introduceți automat un rând nou necompletat prin butonul de comandă

Private Sub CommandButton1_Click()
    Dim rowNum As Integer
    On Error Resume Next
    rowNum = Application.InputBox(Prompt:="Enter Row Number where you want to add a row:", _
                                    Title:="Kutools for excel", Type:=1)
    Rows(rowNum & ":" & rowNum).Insert Shift:=xlDown
End Sub

notițe: În cod, CommanButton1 este numele butonului de comandă pe care l-ați creat.

6. presa Alt + Q tastele simultan pentru a închide Microsoft Visual Basic pentru aplicații fereastră. Și opriți Mod de proiectare în temeiul Dezvoltator tab.

7. Faceți clic pe butonul de comandă inserat și pe a Kutools pentru Excel apare fereastra de dialog. Vă rugăm să introduceți un anumit număr de rând unde doriți să adăugați un rând nou necompletat, apoi faceți clic pe OK buton. Vedeți captura de ecran:

Apoi, noul rând gol este inserat într-o poziție specificată a foii de lucru, așa cum este prezentat mai jos. Și păstrează formatarea celulei celulei de mai sus.


Articole pe aceeași temă:


Cele mai bune instrumente de productivitate Office

Kutools pentru Excel vă rezolvă majoritatea problemelor și vă crește productivitatea cu 80%

  • reutilizarea: Introduceți rapid formule complexe, diagrame și orice ai folosit anterior; Criptați celulele cu parola; Creați o listă de corespondență și trimiteți e-mailuri ...
  • Super Formula Bar (editați cu ușurință mai multe linii de text și formulă); Layout de citire (citiți și editați cu ușurință un număr mare de celule); Lipiți la interval filtrat...
  • Merge celule / rânduri / coloane fără a pierde date; Conținut de celule divizate; Combinați rânduri / coloane duplicate... Prevenirea celulelor duplicate; Comparați gamele...
  • Selectați Duplicat sau Unic Rânduri; Selectați Rânduri goale (toate celulele sunt goale); Super Find și Fuzzy Find în multe cărți de lucru; Selectare aleatorie ...
  • Copie exactă Mai multe celule fără modificarea referinței formulelor; Creați automat referințe la foi multiple; Introduceți gloanțe, Casete de selectare și multe altele ...
  • Extrageți textul, Adăugați text, eliminați după poziție, Eliminați spațiul; Creați și imprimați subtotaluri de paginare; Convertiți conținutul dintre celule și comentarii...
  • Super Filtru (salvați și aplicați scheme de filtrare altor foi); Sortare avansată după lună / săptămână / zi, frecvență și multe altele; Filtru special cu bold, italic ...
  • Combinați cărți de lucru și foi de lucru; Merge Tables pe baza coloanelor cheie; Împărțiți datele în mai multe foi; Conversia în loturi xls, xlsx și PDF...
  • Peste 300 de funcții puternice. Suportă Office / Excel 2007-2021 și 365. Acceptă toate limbile. Implementare ușoară în întreprinderea sau organizația dvs. Funcții complete Probă gratuită de 30 de zile. Garanție de returnare a banilor de 60 de zile.
fila kte 201905

Fila Office aduce interfața cu file în Office și vă face munca mult mai ușoară

  • Activați editarea și citirea cu file în Word, Excel, PowerPoint, Publisher, Access, Visio și Project.
  • Deschideți și creați mai multe documente în filele noi ale aceleiași ferestre, mai degrabă decât în ​​ferestrele noi.
  • Vă crește productivitatea cu 50% și reduce sute de clicuri de mouse pentru dvs. în fiecare zi!
fundul officetab
Comentarii (22)
Încă nu există evaluări. Fii primul care evaluează!
Acest comentariu a fost redus la minimum de moderatorul de pe site
Ar putea cineva să sfătuiască cum pot modifica acest lucru pentru a adăuga automat noul rând în partea de jos a unui tabel Excel?
Acest comentariu a fost redus la minimum de moderatorul de pe site
ai gasit raspunsul?
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună, folosesc acest cod, dar nu aduce în jos formulele din rândul de dinainte, mă puteți ajuta, vă rog.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Dragă Kim,

Vă rugăm să introduceți un tabel cu intervalul în care veți introduce rânduri goale. După aceea, la inserarea unui rând nou, formula se va reduce automat.

Cu stima, Crystal
Acest comentariu a fost redus la minimum de moderatorul de pe site
Puteți oferi un exemplu? Nu respectă ceea ce spui aici. Mulțumiri
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună,
Vă rugăm să convertiți intervalul într-un interval de tabel pentru a reduce automat formula atunci când introduceți rânduri noi. Vedeți captura de ecran:
Acest comentariu a fost redus la minimum de moderatorul de pe site
Am aceeași problemă ca și Kim - Când foaia este neprotejată, adaugă rândul cu formatarea corectă și formulele corecte. Odată ce foaia este protejată, nu se copiază formulele. Ceva gânduri?
Acest comentariu a fost redus la minimum de moderatorul de pe site
Dragă Michelle,
În mod implicit, o foaie de lucru protejată nu permite inserarea unui rând necompletat.
Prin urmare, codul VBA nu poate funcționa în acest caz.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Există o modalitate de a adăuga un buton Inserare rând și de a face ca noile rânduri să păstreze celulele îmbinate/formatate așa cum sunt în restul unui tabel?
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună Simon,
Îmi pare rău, vă pot ajuta încă la rezolvarea acestei probleme. Multumesc pentru comentariul tau.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Există vreo modalitate ca noul rând să păstreze formatarea rândului de mai jos în loc de rândul de deasupra?
Acest comentariu a fost redus la minimum de moderatorul de pe site
Salut Tarl,
Îmi pare rău, vă pot ajuta încă la rezolvarea acestei probleme. Multumesc pentru comentariul tau.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Da, m-am jucat cu scenariul și mi-a funcționat. Doar adăugați numărul rândului dorit (eu am ales rândul 6), dar voi fi șocat dacă va fi publicat.

Sub CommandButton privat 1_Click()
Dim rowNum ca întreg
La data de eroare CV următoare
Rânduri(rowNum și „6”).Insert Shift:=xlDown
End Sub
Acest comentariu a fost redus la minimum de moderatorul de pe site
este posibil să inserați mai multe rânduri de foi simultan, faceți clic pe aceasta.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună,
Codul de mai jos vă poate ajuta să rezolvați problema. Vă rugăm să încercați.

Sub CommandButton privat 1_Click()
Dim xIntRrow ca număr întreg
Dim rowNum ca întreg
La data de eroare CV următoare
rowNum = Application.InputBox(Prompt:="Introduceți numărul rândului în care doriți să adăugați un rând:", _
Titlu:="Kutools pentru Excel", Tip:=1)
xIntRrow = Application.InputBox(Prompt:="Tastați numărul de rânduri pe care doriți să le introduceți", _
Titlu:="Kutools pentru Excel", Tip:=1)
Rânduri(rowNum + 1 & ":" & rowNum + 1).EntireRow.Resize(xIntRrow).Insert Shift:=xlShiftDown

End Sub
Acest comentariu a fost redus la minimum de moderatorul de pe site
este posibil să se creeze într-o altă foaie? Chiar am nevoie de asta
Acest comentariu a fost redus la minimum de moderatorul de pe site
Sub AddNewRow()



Sub CommandButton privat 1_Click()

ActiveSheet.Unprotect Password:="1234"



Dim mySheets

Dim i As Long



mySheets = Array("Sheet2")



Pentru i = LBound(mySheets) To UBound(mySheets)

Cu Foi de calcul(mySheets(i))

.Range("B10").EntireRow.Insert Shift:=xlDown

.Range("B10:H10").Chenaruri.Greutate = xlSuțire

Se termina cu

Apoi eu



ActiveSheet.Protect Password:="1234"



End Sub

Nu știu dacă asta va funcționa pentru tine. A funcționat destul de bine pentru mine. Am lăsat chiar și celule neprotejate pe care le puteți introduce date și formulele sunt încă active. Mi-a luat o zi întreagă să-mi dau seama. înlocuiți „1234” cu orice parolă doriți, „Sheet2” cu foaia cu care lucrați și introduceți intervalul dorit.
Codul dezprotejează mai întâi foaia de lucru, adaugă rând și protejează foaia de lucru.
kiongakamau@gmail.com
Acest comentariu a fost redus la minimum de moderatorul de pe site
Hi

Am folosit codul dar am vrut să adaug rânduri cu formule, prin urmare am adăugat ultima linie pentru a putea adăuga rândurile cu formule.
Totuși, în fișierul meu Excel și în coloana „F” am un text care poate fi introdus manual și ar fi diferit în cazuri diferite. Prin urmare, aș dori să adaug rânduri sub rândul de referință cu păstrarea formulelor și valorilor în toate celulele, cu excepția celulei din coloana "F", pe care aș dori să fie copiată ca goală!
Ați putea vă rog să mă ajutați cu ce ar trebui să adaug la codul de dedesubt pentru a putea avea celulele coloanei „F” goale ori de câte ori adaug un rând cu acest cod?
mulțumesc anticipat!

Sub CommandButton privat 1_Click()
Dim xIntRrow ca număr întreg
Dim rowNum ca întreg
La data de eroare CV următoare
rowNum = Application.InputBox(Prompt:="Introduceți numărul rândului în care doriți să adăugați un rând:", _
Titlu:="Kutools pentru Excel", Tip:=1)
xIntRrow = Application.InputBox(Prompt:="Tastați numărul de rânduri pe care doriți să le introduceți", _
Titlu:="Kutools pentru Excel", Tip:=1)
Rânduri(rowNum + 1 & ":" & rowNum + 1).EntireRow.Resize(xIntRrow).Insert Shift:=xlShiftDown
Rânduri(rowNum).Resize(xIntRrow + 1).FillDown

End Sub
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună Mah,
Următorul cod VBA vă poate face o favoare. Vă rugăm să încercați. Mulțumesc.

Private Sub CommandButton1_Click()
'Updated by Extendoffice 20220707
    Dim rowNum As Integer
    Dim xRg1, xRg2 As Range
    
    On Error Resume Next
    
    rowNum = Application.InputBox(Prompt:="Enter Row Number where you want to add a row:", _
                                    Title:="Kutools for excel", Type:=1)
    
    Rows(rowNum & ":" & rowNum).Insert Shift:=xlDown
    Rows((rowNum - 1) & ":" & (rowNum - 1)).Copy
    Rows(rowNum & ":" & rowNum).Select
    Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
    Range("F" & rowNum).Value = ""
End Sub
Acest comentariu a fost redus la minimum de moderatorul de pe site
Caros colegas, após pesquisar (bastante) na net não consegui encontrar um atalho, comando, código, nada, nada, que eu possa usar pentru a introduce uma macro APENAS uma forma de inserir uma linha ABAIXO da célula ativa. Isto porquê se eu gravar o endereço da célula, ele não muda, fica semper na mesma célula e as following não vão ficar corectamente abaixo, e se eu usar um endereço de célula fixo, a linha tem que ser inserida acima, mas não formata da forma desejada, que seria o format das linhas de cima.

Acho que o código existe, só não encontro, já tentei várias formas, selecionando um fixo, subindo uma linha e pedindo para inserir após, mas as follows não funcionam de acordo.

Alguém poderia me help?
Acest comentariu a fost redus la minimum de moderatorul de pe site
... Testei os códigos acima, mas, como se trata de pessoas que vão usar, não é viável os box que pedem a linha ea quantidade, não dá...
Acest comentariu a fost redus la minimum de moderatorul de pe site
Criei uma linha e nomeei ca spotB,
Mudei a altura da linha para 0,01 para ocultá-la (apenas por estética).
Criei um botão:
Application.Goto Reference:="spotB"
Selection.EntireRow.Insert

Problema rezolvată.

Obrigado pelos codes a Mah e crystal, mas eu tinha 8 titlus para separar, cada um inserindo linhas when necessário ao usuário, e não queria nenhuma pergunta sobre quantidade de linhas, os usuários não leem perguntas and clicam logo em OK, depois reclamam.. .
Nu există comentarii postate aici încă
Lăsa comentarii
Postare ca invitat
×
Evaluează această postare:
0   Caractere
Locații sugerate

Urmărește-ne

Copyright © 2009 - www.extendoffice.com. | Toate drepturile rezervate. Cu sprijinul ExtendOffice. | Harta site-ului
Microsoft și sigla Office sunt mărci comerciale sau mărci comerciale înregistrate ale Microsoft Corporation în Statele Unite și / sau în alte țări.
Protejat de Sectigo SSL