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

Conas comhaid a lúbadh trí eolaire agus sonraí a chóipeáil isteach i máistir-bhileog in Excel?

Má cheaptar go bhfuil iliomad leabhar oibre Excel i bhfillteán, agus gur mhaith leat lúb a dhéanamh trí na comhaid Excel seo go léir agus sonraí a chóipeáil ó raon sonraithe de bhileoga oibre den ainm céanna isteach i máistir-bhileog oibre in Excel, cad is féidir leat a dhéanamh? Tugann an t-alt seo modh isteach chun é a bhaint amach go mion.

Lúb trí chomhaid in eolaire agus cóipeáil sonraí i máistir-bhileog le cód VBA


Lúb trí chomhaid in eolaire agus cóipeáil sonraí i máistir-bhileog le cód VBA

Más mian leat sonraí sonraithe i raon A1: D4 a chóipeáil ó gach bileog1 de leabhair oibre i bhfillteán áirithe go máistir-bhileog, déan mar a leanas le do thoil.

1. Sa leabhar oibre cruthóidh tú máistir-bhileog oibre, brúigh an Eile + F11 eochracha a oscailt Microsoft Visual Basic d’Fheidhmchláir fhuinneog.

2. Sa Microsoft Visual Basic d’Fheidhmchláir fuinneog, cliceáil Ionsáigh > Modúil. Ansin cóipeáil thíos cód VBA isteach i bhfuinneog an chóid.

Cód VBA: lúb trí chomhaid i bhfillteán agus cóipeáil sonraí i máistir-bhileog

Sub Merge2MultiSheets()
    Dim xRg As Range
    Dim xSelItem As Variant
    Dim xFileDlg As FileDialog
    Dim xFileName, xSheetName, xRgStr As String
    Dim xBook, xWorkBook As Workbook
    Dim xSheet As Worksheet
    On Error Resume Next
    Application.DisplayAlerts = False
    Application.EnableEvents = False
    Application.ScreenUpdating = False
    xSheetName = "Sheet1"
    xRgStr = "A1:D4"
    Set xFileDlg = Application.FileDialog(msoFileDialogFolderPicker)
    With xFileDlg
        If .Show = -1 Then
            xSelItem = .SelectedItems.Item(1)
            Set xWorkBook = ThisWorkbook
            Set xSheet = xWorkBook.Sheets("New Sheet")
            If xSheet Is Nothing Then
                xWorkBook.Sheets.Add(after:=xWorkBook.Worksheets(xWorkBook.Worksheets.Count)).Name = "New Sheet"
                Set xSheet = xWorkBook.Sheets("New Sheet")
            End If
            xFileName = Dir(xSelItem & "\*.xlsx", vbNormal)
            If xFileName = "" Then Exit Sub
            Do Until xFileName = ""
               Set xBook = Workbooks.Open(xSelItem & "\" & xFileName)
                Set xRg = xBook.Worksheets(xSheetName).Range(xRgStr)
                xRg.Copy xSheet.Range("A65536").End(xlUp).Offset(1, 0)
                xFileName = Dir()
                xBook.Close
            Loop
        End If
    End With
    Application.DisplayAlerts = True
    Application.EnableEvents = True
    Application.ScreenUpdating = True
End Sub

nótaí:

1). Sa chód, “A1: D4"Agus"Sheet1Ciallaíonn “go ndéanfar sonraí i raon A1: D4 de Bhileog 1 go léir a chóipeáil isteach sa mháistir-bhileog. Agus “Bileog Nua”Is ainm don mháistir-bhileog chruthaithe nua.
2). Níor cheart na comhaid Excel san fhillteán sonrach a oscailt.

3. Brúigh an F5 eochair chun an cód a rith.

4. San oscailt Brabhsáil fhuinneog, roghnaigh le do thoil san fhillteán ina bhfuil na comhaid a lúbfaidh tú tríd, agus ansin cliceáil ar an OK cnaipe. Féach an pictiúr:

Ansin cruthaítear máistir-bhileog oibre darb ainm “Bileog Nua” ag deireadh an leabhair oibre reatha. Agus tá sonraí i raon A1: D4 de gach Bileog1 i bhfillteán roghnaithe liostaithe taobh istigh den bhileog oibre.


Earraí gaolmhara:


Na hUirlisí Táirgiúlachta Oifige is Fearr

Réitíonn Kutools for Excel an chuid is mó de do chuid Fadhbanna, agus Méadaíonn sé do Tháirgiúlacht 80%

  • Athúsáid: Cuir isteach go tapa foirmlí casta, cairteacha agus aon rud a d'úsáid tú roimhe seo; Cealla a Chriptiú le pasfhocal; Cruthaigh Liosta Ríomhphoist agus seol ríomhphoist ...
  • Barra Foirmle Super (cuir línte iolracha téacs agus foirmle in eagar go héasca); Leagan Amach Léitheoireachta (líon mór cealla a léamh agus a chur in eagar go héasca); Greamaigh go dtí an Raon Scagtha...
  • Cumaisc Cealla / Sraitheanna / Colúin gan Sonraí a chailleadh; Ábhar Cealla Scoilt; Comhcheangail Sraitheanna / Colúin Dúblacha... Cill Dúblach a Chosc; Déan comparáid idir Ranganna...
  • Roghnaigh Dúblach nó Uathúil Sraitheanna; Roghnaigh Blank Rows (tá na cealla uile folamh); Aimsigh Super agus Fuzzy Aimsigh i go leor Leabhar Oibre; Roghnaigh go randamach ...
  • Cóip Díreach Cealla Il gan tagairt fhoirmle a athrú; Tagairtí Cruthaigh Auto chuig Bileoga Il; Cuir Urchair isteach, Boscaí Seiceála agus go leor eile ...
  • Sliocht Téacs, Cuir Téacs leis, Bain de réir Poist, Bain Spás; Subtotals Paging a chruthú agus a phriontáil; Tiontaigh Idir Ábhar Cealla agus Tráchtanna...
  • Scagaire Super (scéimeanna scagaire a shábháil agus a chur i bhfeidhm ar bhileoga eile); Ard-Sórtáil de réir míosa / seachtaine / lae, minicíocht agus níos mó; Scagaire Speisialta le cló trom, iodálach ...
  • Comhcheangail Leabhair Oibre agus Bileoga Oibre; Cumaisc Táblaí bunaithe ar eochaircholúin; Roinn Sonraí i Ilbhileoga; Baisc Tiontaigh xls, xlsx agus PDF...
  • Níos mó ná 300 gné chumhachtach. Tacaíonn Office / Excel 2007-2021 agus 365. Tacaíonn sé le gach teanga. Imscaradh éasca i d'fhiontar nó d'eagraíocht. Gnéithe iomlána triail saor in aisce 30-lá. Ráthaíocht airgid ar ais 60-lá.
cluaisín kte 201905

Tugann Tab Oifige comhéadan Tabbed chuig Office, agus Déan Do Obair i bhfad Níos Éasca

  • Cumasaigh eagarthóireacht agus léamh tabbed i Word, Excel, PowerPoint, Foilsitheoir, Rochtain, Visio agus Tionscadal.
  • Oscail agus cruthaigh cáipéisí iolracha i gcluaisíní nua den fhuinneog chéanna, seachas i bhfuinneoga nua.
  • Méadaíonn do tháirgiúlacht 50%, agus laghdaíonn sé na céadta cad a tharlaíonn nuair luch duit gach lá!
bun officetab
Sórtáil tuairimí de réir
Comments (20)
Níl rátálacha ar bith fós. Bí ar an gcéad duine a rátáil!
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
go raibh maith agat as an gcód vba! Oibríonn sé go foirfe! Ar mhaith liom a fháil amach cad é an cód más gá dom GREAMÚ MAR LUACH ina ionad sin? Thx roimh ré!
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit Lai Ling,
Is féidir leis an gcód seo a leanas cabhrú leat an fhadhb a réiteach. Go raibh maith agat as do thuairim.

Fo-Chumasc2Milbhileoga()
Dim xRg Mar Raon
Dim xSelItem Mar Athrú
Dim xFileDlg Mar FileDialog
Dim xFileName, xSheetName, xRgStr Mar Teaghrán
Dim xBook, x Leabhar Oibre Mar Leabhar Oibre
Dim xBileog Mar Bhileog Oibre
Ar Lean Earráid Aghaidh
Application.DisplayAlerts = Bréagach
Application.EnableEvents = Bréagach
Application.ScreenUpdating = Bréagach
xSheetName = "Bileog1"
xRgStr = "A1:D4"
Socraigh xFileDlg = Application.FileDialog(msoFileDialogFolderPicker)
Le xFileDlg
Más rud é .Show = -1 Ansin
xSelItem = .SelectedItems.Item(1)
Socraigh xWorkBook = An Leabhar Oibre Seo
Socraigh xSheet = xWorkBook.Sheets("Bileog Nua")
Mura rud ar bith é xSheet Ansin
xWorkBook.Sheets.Add(i ndiaidh:=xWorkBook.Worksheets(xWorkBook.Worksheets.count)).Name = "Bileog Nua"
Socraigh xSheet = xWorkBook.Sheets("Bileog Nua")
Deireadh Má
xFileName = Dir(xSelItem & "\*.xlsx", vbNormal)
Má tá xFileName="" Ansin Scoir Fo
Déan Go dtí xFileName=""
Socraigh xBook = Leabhair Oibre.Open(xSelItem &"\" &xFileName)
Socraigh xRg = xBook.Bileoga Oibre(xSheetName).Range(xRgStr)
xRg.Copy xSheet.Range("A65536").Deireadh(xlUp).Fritháireamh(1, 0)
xFileName = Dir()
xLeabhar.Dún
Lúb
Deireadh Má
Deireadh Le
Socraigh xRg = xSheet.UsedRange
xRg.Formáidí Clear
xRg.UseStandardHeight = Fíor
xRg.UseStandardWidth = Fíor
Application.DisplayAlerts = Fíor
Application.EnableEvents = Fíor
Feidhmchlár.ScreenUpdating = Fíor
Fo Deireadh
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit, go raibh maith agat as an gcód. An féidir leat a chur in iúl dom, le do thoil, conas is féidir liom an t-ainm comhaid Excel ónar cóipeáladh an raon sonraí a chur san áireamh? Ba mhór an chabhair é seo!

Go raibh maith agat.
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit,

Go raibh maith agat as an teagaisc.

Conas a dhéanfainn: Ná cóipeáil ach an tsraith i "Bileog1" le luachanna ón ró "iomlán" agus greamaigh le [ainm an chomhaid] sa mháistir-bhileog dar teideal "Bileog Nua". Is féidir an tsraith le Total a thabhairt faoi deara difriúil i ngach bileog oibre.

Mar shampla:
Comhad1: Bileog 1
Col1, Col2, Colx
1,2,15
Toradh,10,50

Comhad2: Bileog 1
Col1, Col2, Colx
1,5,10
2,4,16
3,3,6
4,5,6
5,7,10
Toradh,300,500

MasterFile: "Bileog Nua":
comhad1, 10, 50
comhad2, 300, 500
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit ansin, Oibríonn sé seo go hiontach. An bhfuil bealach ann le hathrú chun na luachanna a tharraingt anonn agus ní an fhoirmle?
Go raibh maith agat !!
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Hi Trish,
Is féidir leis an gcód seo a leanas cabhrú leat an fhadhb a réiteach. Go raibh maith agat as do thuairim.

Fo-Chumasc2Milbhileoga()
Dim xRg Mar Raon
Dim xSelItem Mar Athrú
Dim xFileDlg Mar FileDialog
Dim xFileName, xSheetName, xRgStr Mar Teaghrán
Dim xBook, x Leabhar Oibre Mar Leabhar Oibre
Dim xBileog Mar Bhileog Oibre
Ar Lean Earráid Aghaidh
Application.DisplayAlerts = Bréagach
Application.EnableEvents = Bréagach
Application.ScreenUpdating = Bréagach
xSheetName = "Bileog1"
xRgStr = "A1:D4"
Socraigh xFileDlg = Application.FileDialog(msoFileDialogFolderPicker)
Le xFileDlg
Más rud é .Show = -1 Ansin
xSelItem = .SelectedItems.Item(1)
Socraigh xWorkBook = An Leabhar Oibre Seo
Socraigh xSheet = xWorkBook.Sheets("Bileog Nua")
Mura rud ar bith é xSheet Ansin
xWorkBook.Sheets.Add(i ndiaidh:=xWorkBook.Worksheets(xWorkBook.Worksheets.count)).Name = "Bileog Nua"
Socraigh xSheet = xWorkBook.Sheets("Bileog Nua")
Deireadh Má
xFileName = Dir(xSelItem & "\*.xlsx", vbNormal)
Má tá xFileName="" Ansin Scoir Fo
Déan Go dtí xFileName=""
Socraigh xBook = Leabhair Oibre.Open(xSelItem &"\" &xFileName)
Socraigh xRg = xBook.Bileoga Oibre(xSheetName).Range(xRgStr)
xRg.Copy xSheet.Range("A65536").Deireadh(xlUp).Fritháireamh(1, 0)
xFileName = Dir()
xLeabhar.Dún
Lúb
Deireadh Má
Deireadh Le
Socraigh xRg = xSheet.UsedRange
xRg.Formáidí Clear
xRg.UseStandardHeight = Fíor
xRg.UseStandardWidth = Fíor
Application.DisplayAlerts = Fíor
Application.EnableEvents = Fíor
Feidhmchlár.ScreenUpdating = Fíor
Fo Deireadh
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit, tá sé fós ag tarraingt na foirmlí, ní na luachanna, mar sin tá sé ag tabhairt earráid #REF dom. Tá a fhios agam go bhféadfadh sé go mbeadh gá le .PasteSpecial xlPasteValues ​​áit éigin, ach ní féidir liom a dhéanamh amach cén áit. Is féidir leat cabhrú? Go raibh maith agat!
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Hi Go raibh maith agat as seo.


Conas is féidir liom an cód a chur san áireamh chun lúbadh trí gach fillteán agus fofhillteán agus an chóip thuas a dhéanamh?


Go raibh maith agat!
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit - Tá an cód seo foirfe don méid atá mé ag iarraidh a bhaint amach.

An bhfuil bealach ann chun lúb trí gach fillteán agus fofhillteán agus an chóip a dhéanamh?


Go raibh maith agat!
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit - Oibríonn an cód seo go han-mhaith don chéad 565 líne do gach comhad, ach tá gach líne ina dhiaidh sin forluite ag an gcéad chomhad eile.
an bhfuil bealach ann chun é seo a réiteach?
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Go raibh maith agat - conas a bheadh ​​duine in ann (luachanna speisialta) a chóipeáil agus a ghreamú ó gach bileog oibre laistigh de leabhar oibre ina leatháin ar leith laistigh de phríomhchomhad Máistir?
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
conas a dhéanann tú cód a fhágáil bán má tá cill folamh?
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
domsa, athraíonn an t-ainm cluaisín "Sheet1" do gach ceann de mo chomhaid. Mar shampla, Tab1, Tab2, Tab3, Tab4...Conas is féidir liom lúb a shocrú chun dul trí liosta in Excel agus leanúint ar aghaidh ag athrú an ainm "Sheet1" go dtí go ritheann sé trí gach rud?
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit Nick,Is féidir leis an gcód VBA thíos cabhrú leat an fhadhb a réiteach. Bain triail as, le do thoil. FolúbThroughFileAthainmnigh()
'Nuashonraithe ag Extendoffice 2021/12/31
Dim xRg Mar Raon
Dim xSelItem Mar Athrú
Dim xFileDlg Mar FileDialog
Dim xFileName, xSheetName, xRgStr Mar Teaghrán
Dim xBook, x Leabhar Oibre Mar Leabhar Oibre
Dim xBileog Mar Bhileog Oibre
Dim xShs Mar Bileoga
Dim xName As Teaghrán
Dim xFNum Mar Shlánuimhir
Ar Lean Earráid Aghaidh
Application.DisplayAlerts = Bréagach
Application.EnableEvents = Bréagach
Application.ScreenUpdating = Bréagach
Socraigh xFileDlg = Application.FileDialog(msoFileDialogFolderPicker)
xFileDlg.Taispeáin
xSelItem = xFileDlg.SelectedItems.Item(1)
xFileName = Dir(xSelItem & "\*.xlsx", vbNormal)
Déan Cé go bhfuil xFileName <>"""
Socraigh xWorkBook = Leabhair Oibre.Open(xSelItem &"\" &xFileName)
Socraigh xShs = xWorkBook.Sheets
Le haghaidh xFNum = 1 Go xShs.Count
Socraigh xSheet = xShs.Item(xFNum)
xName = xSheet.Name
xName = Ionadaigh(xName,"Bileog""Tab") 'Cuir Cluaisín in ionad an Bhileog
xSheet.Name = xName
Ar Aghaidh
xWorkBook.Sábháil
xLeabhar Oibre.Dún
xFileName = Dir()
Lúb
Application.DisplayAlerts = Fíor
Application.EnableEvents = Fíor
Feidhmchlár.ScreenUpdating = Fíor
Fo Deireadh
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit ba mhaith liom cód chun na sonraí a chóipeáil i 6 leabhar oibre éagsúla (i bhfillteán) a bhfuil bileoga san áireamh iontu chuig LEABHAR SAOTHAIR NUA. in vba
plz cabhrú liom asp
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit Paranus,
Is féidir leis an script VBA san alt seo a leanas illeabhair oibre nó bileoga sonraithe leabhar oibre a chomhcheangal le máistirleabhar oibre. Seiceáil le do thoil an féidir leis cabhrú.
Conas Illeabhair Saothair a Chomhcheangail I Máistirleabhar Oibre Amháin In Excel?
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Olá bom dia.
Gostei muito dessde código, mas não me ajudou com os relatórios que eu preciso impreimir.
Preciso imprimir 2.400 relatório de exel que estão em pastas diferentes and não estão configuradas corretamente for impressão. Cén fáth a bhfuil tú ag iarraidh cód VBA a úsáid chun a gcuid tuairimí a uathoibriú ? Mise ajudaria muito, obrigada.
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit Maria Soares,
Seiceáil le do thoil an féidir leis an gcód VBA sa phost seo a leanas cabhrú leat.
Conas iliomad leabhar oibre a phriontáil in Excel?
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Tá mo chás cosúil leis, ach amháin go bhfuil bileoga iolracha agam i ngach comhad, gach ceann acu le hainmneacha éagsúla ach comhsheasmhach idir comhaid. An bhfuil bealach ann chun an cód seo a Lúb chun na sonraí laistigh de na comhaid a chóipeáil agus (luachanna) a ghreamú d'ainmneacha bileoga ar leith sa mháistirleabhar oibre? Tá na hainmneacha bileog sa mháistir mar an gcéanna leis na comhaid. Ba mhaith liom lúb trí iad. Chomh maith leis sin, beidh an méid sonraí i ngach bileog éagsúil, mar sin beidh orm na sonraí i ngach bileog a roghnú ag baint úsáide as rud éigin mar seo:

Raon ("A1").Roghnaigh
Raon (Roghnú, Roghnú.End(xlDown)).Roghnaigh
Raon (Roghnú, Roghnú.End(xlToRight)).Roghnaigh


Is iad na hainmneacha bileoga comhaid ná Tabhairt, Seirbhísí, Árachas, Carr, Costais Eile, etc...

Go raibh maith agat roimh ré.
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit Andrew Shahan,
Is féidir leis an gcód VBA seo a leanas d'fhadhb a réiteach. Tar éis an cód a reáchtáil agus fillteán a roghnú, déanfaidh an cód an bhileog oibre a mheaitseáil go huathoibríoch de réir ainm agus na sonraí a ghreamú isteach sa bhileog oibre den ainm céanna sa mháistirleabhar oibre.
Sub Merge2MultiSheets()
'Updated by Extendoffice 20221209
    Dim xRg As Range
    Dim xSelItem As Variant
    Dim xFileDlg As FileDialog
    Dim xFileName, xSheetName, xRgStr As String
    Dim xBook As Workbook, xMainBook As Workbook
    Dim xSheet As Worksheet
    On Error Resume Next
    
    Application.DisplayAlerts = False
    Application.EnableEvents = False
    Application.ScreenUpdating = False

    Set xMainBook = ThisWorkbook
    
    Set xFileDlg = Application.FileDialog(msoFileDialogFolderPicker)
    With xFileDlg
        If .Show = -1 Then
            xSelItem = .SelectedItems.Item(1)
            xFileName = Dir(xSelItem & "\*.xlsx", vbNormal)
            If xFileName = "" Then Exit Sub
            
            Do Until xFileName = ""
            Set xBook = Workbooks.Open(xSelItem & "\" & xFileName)

            For Start = 1 To xBook.Worksheets.Count
                Set xSheet = xBook.Worksheets.Item(Start)
                xSheet.Activate
                xSheetName = xSheet.Name
                xSheet.UsedRange.Copy (xMainBook.Worksheets.Item(xSheetName).Range("A1048576").End(xlUp).Offset(1, 0))
            Next
                xFileName = Dir()
                xBook.Close
            Loop
        End If
    End With
    Application.DisplayAlerts = True
    Application.EnableEvents = True
    Application.ScreenUpdating = True
End Sub
Níl aon tráchtanna curtha suas anseo go fóill
Fág do chuid tuairimí
Ag postáil mar Aoi
×
Ráta an post seo:
0   Carachtair
Suímh Molta

Lean orainn

Cóipcheart © 2009 - www.extendoffice.com. | Gach ceart ar cosaint. Cumhachtaithe ag ExtendOffice. | léarscáil an tSuímh
Is trádmharcanna nó trádmharcanna cláraithe de chuid Microsoft Corporation sna Stáit Aontaithe agus / nó i dtíortha eile iad lógó Office agus Office.
Cosanta ag Sectigo SSL