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

Conas comhaid téacs iolracha a iompórtáil ó fhillteán i mbileog oibre amháin?

Mar shampla, anseo tá fillteán agat le comhaid téacs iolracha, is é an rud is mian leat a dhéanamh ná na comhaid téacs seo a iompórtáil isteach i mbileog oibre amháin mar a thaispeántar thíos ar an scáileán. In áit na comhaid téacs a chóipeáil ceann ar cheann, an bhfuil aon chleasanna ann chun na comhaid téacs a iompórtáil go tapa ó fhillteán amháin i mbileog amháin?

Iompórtáil comhaid téacs iolracha ó fhillteán amháin i mbileog amháin le VBA

Comhad téacs a iompórtáil chuig an gcill ghníomhach le Kutools for Excel smaoineamh maith3


Seo cód VBA a chabhróidh leat gach comhad téacs a iompórtáil ó fhillteán sonrach amháin i mbileog nua.

1. Cumasaigh leabhar oibre a theastaíonn uait comhaid téacs a iompórtáil, agus brúigh Alt + F11 eochracha le cumasú Microsoft Visual Basic d’Fheidhmchláir fhuinneog.

2. cliceáil Ionsáigh > Modúil, cóipeáil agus greamaigh faoi bhun chód VBA chuig an Modúil fhuinneog.

VBA: Iompórtáil comhaid téacs iolracha ó fhillteán amháin go bileog amháin

Sub Test()
'UpdatebyExtendoffice6/7/2016
    Dim xWb As Workbook
    Dim xToBook As Workbook
    Dim xStrPath As String
    Dim xFileDialog As FileDialog
    Dim xFile As String
    Dim xFiles As New Collection
    Dim I As Long
    Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
    xFileDialog.AllowMultiSelect = False
    xFileDialog.Title = "Select a folder [Kutools for Excel]"
    If xFileDialog.Show = -1 Then
        xStrPath = xFileDialog.SelectedItems(1)
    End If
    If xStrPath = "" Then Exit Sub
    If Right(xStrPath, 1) <> "\" Then xStrPath = xStrPath & "\"
    xFile = Dir(xStrPath & "*.txt")
    If xFile = "" Then
        MsgBox "No files found", vbInformation, "Kutools for Excel"
        Exit Sub
    End If
    Do While xFile <> ""
        xFiles.Add xFile, xFile
        xFile = Dir()
    Loop
    Set xToBook = ThisWorkbook
    If xFiles.Count > 0 Then
        For I = 1 To xFiles.Count
            Set xWb = Workbooks.Open(xStrPath & xFiles.Item(I))
            xWb.Worksheets(1).Copy after:=xToBook.Sheets(xToBook.Sheets.Count)
            On Error Resume Next
            ActiveSheet.Name = xWb.Name
            On Error GoTo 0
            xWb.Close False
        Next
    End If
End Sub

3. Brúigh F5 chun dialóg a thaispeáint, agus fillteán a roghnú ina bhfuil comhaid téacs a theastaíonn uait a iompórtáil. Féach an pictiúr:
doc comhaid téacs a iompórtáil ó fhillteán 1

4. cliceáil OK. Ansin iompórtáladh na comhaid téacs chuig an leabhar oibre gníomhach mar bhileog nua ar leithligh.
doc comhaid téacs a iompórtáil ó fhillteán 2


Más mian leat comhad téacs amháin a iompórtáil chuig cill nó raon ar leith, is féidir leat iarratas a dhéanamh Kutools le haghaidh Excel'S Cuir isteach Comhad ag Cúrsóir fóntais.

Kutools le haghaidh Excel, le níos mó ná 300 feidhmeanna úsáideacha, déanann sé do phoist níos éasca. 

Tar éis suiteáil saor in aisce Kutools for Excel, déan mar atá thíos le do thoil:

1. Roghnaigh cill is mian leat an comhad téacs a iompórtáil, agus cliceáil Kutools Plus > Iompórtáil / Export > Cuir isteach Comhad ag Cúrsóir. Féach an pictiúr:
doc comhaid téacs a iompórtáil ó fhillteán 3

2. Ansin tagann dialóg amach, cliceáil Brabhsáil chun an Roghnaigh comhad le cur isteach ag an dialóg suímh cúrsóra cille, roghnaigh seo chugainn Comhaid Téacs ón liosta anuas, agus ansin roghnaigh an comhad téacs a theastaíonn uait a iompórtáil. Féach an pictiúr:
doc comhaid téacs a iompórtáil ó fhillteán 4

3. cliceáil Oscail > Ok, agus an comhad téacs sonraithe curtha isteach ag suíomh an chúrsóra, féach an scáileán:
doc comhaid téacs a iompórtáil ó fhillteán 5


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 (46)
Rátáil 4 as 5 · rátálacha 1
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Fothástáil()
'UpdatebyExtendoffice6 / 7 / 2016
Dim xWb Mar Leabhar Oibre
Dim xToBook Mar Leabhar Oibre
Dim xStrPath Mar Teaghrán
Dim xFileDialog Mar FileDialog
Dim xFile Mar Teaghrán
Dim xFiles Mar Bhailiúchán Nua
Dim I Chomh Fada
Socraigh xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
xFileDialog.AllowMultiSelect=Bréagach
xFileDialog.Title = "Roghnaigh fillteán [Kutools le haghaidh Excel]"
Má tá xFileDialog.Show = -1 Ansin
xStrPath = xFileDialog.SelectedItems(1)
Deireadh Má
Má tá xStrPath="" Ansin Scoir Fo
Más Ceart(xStrPath, 1) <> "\" Ansin xStrPath = xStrPath & "\"
xFile = Dir(xStrPath & "*.txt")
Má tá xFile="" Ansin
MsgBox "Níor aimsíodh comhaid", vbInformation, "Kutools for Excel"
Fo-Scoir
Deireadh Má
Déan Cé go bhfuil xFile <>"""
xFiles.Cuir xFile, xFile
xFile = Dir()
Lúb
Socraigh xToBook = An Leabhar Oibre Seo
Má tá xFiles.Count > 0 Ansin
Do I = 1 Go xFiles.Count
Socraigh xWb = Leabhair Oibre.Open(xStrPath & xFiles.Item(I))
xWb.Bileoga Oibre(1). Cóipeáil i ndiaidh:=xToBook.Sheets(xToBook.Sheets.Count)
Ar Lean Earráid Aghaidh
ActiveSheet.Name = xWb.Name
Ar Earráid TéighTo 0
xWb.Dún Bréagach
Ar Aghaidh
Deireadh Má
Fo Deireadh

tá an cód seo ag cabhrú ach ba mhaith liom

cluaisín, leathstad, spás fíor conas é seo a dhéanamh cuidigh liom le do thoil
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Ar mhaith leat an spás (teorainneacha) a choinneáil tar éis duit na comhaid téacs a thiontú go leatháin?
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
is é sin mo fhadhb freisin, tá an cód seo fíor. ach tar éis comhaid téacs a thiontú go barr feabhais, ní choimeádann sé na teorainneacha.
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
An bhféadfá an téacschomhad agus an toradh atá uait dom a uaslódáil?
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Tá an fhadhb chéanna agam. Tá na comhaid txt ar fad i leatháin ar leith agus déanann an cód neamhaird ar an spás idir an dá cholún
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit, Des agus PB Rama Murty, is féidir leis an gcód thíos sonraí a roinnt i gcolúin bunaithe ar spás nó cluaisín agus comhad téacs á iompórtáil go bileoga. Is féidir leat triail a bhaint as.

Fo-IompórtáilTextToExcel()
'UpdatebyExtendoffice20180911
Dim xWb Mar Leabhar Oibre
Dim xToBook Mar Leabhar Oibre
Dim xStrPath Mar Teaghrán
Dim xFileDialog Mar FileDialog
Dim xFile Mar Teaghrán
Dim xFiles Mar Bhailiúchán Nua
Dim I Chomh Fada
Dim xIntRow Chomh fada
Dim xFNum, xFArr Chomh fada
Dim xStrValue As Teaghrán
Dim xRg Mar Raon
Dim xArr
Socraigh xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
xFileDialog.AllowMultiSelect=Bréagach
xFileDialog.Title = "Roghnaigh fillteán [Kutools le haghaidh Excel]"
Má tá xFileDialog.Show = -1 Ansin
xStrPath = xFileDialog.SelectedItems(1)
Deireadh Má
Má tá xStrPath="" Ansin Scoir Fo
Más Ceart(xStrPath, 1) <> "\" Ansin xStrPath = xStrPath & "\"
xFile = Dir(xStrPath & "*.txt")
Má tá xFile="" Ansin
MsgBox "Níor aimsíodh comhaid", vbInformation, "Kutools for Excel"
Fo-Scoir
Deireadh Má
Déan Cé go bhfuil xFile <>"""
xFiles.Cuir xFile, xFile
xFile = Dir()
Lúb
Socraigh xToBook = An Leabhar Oibre Seo
Ar Lean Earráid Aghaidh
Application.ScreenUpdating = Bréagach
Má tá xFiles.Count > 0 Ansin

Do I = 1 Go xFiles.Count
Socraigh xWb = Leabhair Oibre.Open(xStrPath & xFiles.Item(I))
xWb.Bileoga Oibre(1). Cóipeáil i ndiaidh:=xToBook.Sheets(xToBook.Sheets.Count)

ActiveSheet.Name = xWb.Name

xWb.Dún Bréagach
xIntRow = ActiveCell.CurrentRegion.Rows.Count
Le haghaidh xFNum = 1 Go xIntRow
Socraigh xRg = ActiveSheet.Range("A" & xFNum)
xArr = Scoilt(xRg.Text, "")
Má tá UBound(xArr) > 0 Ansin
Le haghaidh xFArr = 0 Go UBound(xArr)
Má tá xArr(xFArr) <> "" Ansin
xRg.Value = xArr(xFArr)
Socraigh xRg = xRg.Offset(ColumnOffset:=1)
Deireadh Má
Ar Aghaidh
Deireadh Má
Ar Aghaidh
Ar Aghaidh
Deireadh Má
Feidhmchlár.ScreenUpdating = Fíor
Fo Deireadh
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Cad iad na hathruithe is gá más mian leat sonraí a roinnt i gcolúin bunaithe ar chamóg
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Cad iad na hathruithe is gá a dhéanamh má theastaíonn uaim sonraí a chur isteach i gcolúin bunaithe ar chamóg?
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
D'úsáid mé é seo agus oibríonn sé ach ba mhaith liom é a shábháil ar bhileog amháin mar gurb é an t-eolas céanna atá ar gach bileog agus níl iontu ach comhaid logála ó gach lá.
mar sin ní mór dom an
gach mír san fhillteán ar bhileog amháin
Fo-IompórtáilCSVsWithReference()
'UpdatebyKutoolsforExcel20151214
Dim xWb Mar Leabhar Oibre
Dim xToBook Mar Leabhar Oibre
Dim xStrPath Mar Teaghrán
Dim xFileDialog Mar FileDialog
Dim xFile Mar Teaghrán
Dim xFiles Mar Bhailiúchán Nua
Dim I Chomh Fada
Dim xIntRow Chomh fada
Dim xFNum, xFArr Chomh fada
Dim xStrValue As Teaghrán
Dim xRg Mar Raon
Dim xArr
Ar Earráid TéighTo ErrHandler
Socraigh xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
xFileDialog.AllowMultiSelect=Bréagach
xFileDialog.Title = "Roghnaigh fillteán [Kutools le haghaidh Excel]"
Má tá xFileDialog.Show = -1 Ansin
xStrPath = xFileDialog.SelectedItems(1)
Deireadh Má
Má tá xStrPath="" Ansin Scoir Fo
Más Ceart(xStrPath, 1) <> "\" Ansin xStrPath = xStrPath & "\"
Socraigh xSht = ThisWorkbook.ActiveSheet
If MsgBox("Glan an leathán reatha roimh iompórtáil?", vbYesNo, "Kutools for Excel") = vbYes Ansin xSht.UsedRange.Clear
Application.ScreenUpdating = Bréagach
xFile = Dir(xStrPath & "\" & "*.log")
Déan Cé go bhfuil xFile <>"""
Socraigh xWb = Leabhair Oibre.Open(xStrPath & "\" &xFile)
ActiveSheet.UsedRange.Copy xSht.Range("A" & Rows.Count).Deireadh(xlUp).Fritháireamh(1)
xWb.Dún Bréagach
xFile = Dir
Lúb
Feidhmchlár.ScreenUpdating = Fíor
Fo-Scoir
Earráid:
MsgBox "gan comhaid txt", , "Kutools le haghaidh Excel"
Fo Deireadh

agus an ceann seo a úsáideann spásanna go dd do gach colún

Fo-IompórtáilTextToExcel()
'UpdatebyExtendoffice20180911
Dim xWb Mar Leabhar Oibre
Dim xToBook Mar Leabhar Oibre
Dim xStrPath Mar Teaghrán
Dim xFileDialog Mar FileDialog
Dim xFile Mar Teaghrán
Dim xFiles Mar Bhailiúchán Nua
Dim I Chomh Fada
Dim xIntRow Chomh fada
Dim xFNum, xFArr Chomh fada
Dim xStrValue As Teaghrán
Dim xRg Mar Raon
Dim xArr
Socraigh xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
xFileDialog.AllowMultiSelect=Bréagach
xFileDialog.Title = "Roghnaigh fillteán [Kutools le haghaidh Excel]"
Má tá xFileDialog.Show = -1 Ansin
xStrPath = xFileDialog.SelectedItems(1)
Deireadh Má
Má tá xStrPath="" Ansin Scoir Fo
Más Ceart(xStrPath, 1) <> "\" Ansin xStrPath = xStrPath & "\"
xFile = Dir(xStrPath & "*.txt")
Má tá xFile="" Ansin
MsgBox "Níor aimsíodh comhaid", vbInformation, "Kutools for Excel"
Fo-Scoir
Deireadh Má
Déan Cé go bhfuil xFile <>"""
xFiles.Cuir xFile, xFile
xFile = Dir()
Lúb
Socraigh xToBook = An Leabhar Oibre Seo
Ar Lean Earráid Aghaidh
Application.ScreenUpdating = Bréagach
Má tá xFiles.Count > 0 Ansin

Do I = 1 Go xFiles.Count
Socraigh xWb = Leabhair Oibre.Open(xStrPath & xFiles.Item(I))
xWb.Bileoga Oibre(1). Cóipeáil i ndiaidh:=xToBook.Sheets(xToBook.Sheets.Count)

ActiveSheet.Name = xWb.Name

xWb.Dún Bréagach
xIntRow = ActiveCell.CurrentRegion.Rows.Count
Le haghaidh xFNum = 1 Go xIntRow
Socraigh xRg = ActiveSheet.Range("A" & xFNum)
xArr = Scoilt(xRg.Text, "")
Má tá UBound(xArr) > 0 Ansin
Le haghaidh xFArr = 0 Go UBound(xArr)
Má tá xArr(xFArr) <> "" Ansin
xRg.Value = xArr(xFArr)
Socraigh xRg = xRg.Offset(ColumnOffset:=1)
Deireadh Má
Ar Aghaidh
Deireadh Má
Ar Aghaidh
Ar Aghaidh
Deireadh Má
Feidhmchlár.ScreenUpdating = Fíor
Fo Deireadh
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
conas a dhéanamh má tá teorainneacha i mo chomhad txt le camóg?
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Is féidir leat Find and Replace fuctuon a úsáid chun spás a chur in ionad an chamóg ar dtús, agus an modh thuas a chur i bhfeidhm chun é a thiontú go comhad Excel.
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Nach bhfuil bealach ann chun é seo a athrú sa chód? Bheadh ​​orm é seo a dhéanamh le 130 comhad
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Ceist chéanna
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dóibh siúd a bhfuil cabhair fós ag teastáil uathu, cuir xArr = Scoilt(xRg.Text, ",") in ionad xArr = Split(xRg.Text, "").
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Nuair a rithim an modúl mar a thugtar, cuireann sé gach comhad .txt mar bhileog nua, ní mar líne nua leis an mbileog atá ann cheana féin. An bhfuil bealach ann chun é sin a bhaint amach mar aschur in ionad bileoga nua do gach comhad .txt?
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
An bhfuil sé i gceist agat gach comhad téacs a chomhcheangal le leathán amháin?
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Sea, is é seo a theastaíonn uaim freisin.
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit, Davinder, is féidir leat triail thíos cód vba.
Sub ImportCSVsWithReference()
'UpdatebyKutoolsforExcel20151214
    Dim xSht  As Worksheet
    Dim xWb As Workbook
    Dim xStrPath As String
    Dim xFileDialog As FileDialog
    Dim xFile As String
    On Error GoTo ErrHandler
    Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
    xFileDialog.AllowMultiSelect = False
    xFileDialog.Title = "Select a folder [Kutools for Excel]"
    If xFileDialog.Show = -1 Then
        xStrPath = xFileDialog.SelectedItems(1)
    End If
    If xStrPath = "" Then Exit Sub
    Set xSht = ThisWorkbook.ActiveSheet
    If MsgBox("Clear the existing sheet before importing?", vbYesNo, "Kutools for Excel") = vbYes Then xSht.UsedRange.Clear
    Application.ScreenUpdating = False
    xFile = Dir(xStrPath & "\" & "*.txt")
    Do While xFile <> ""
        Set xWb = Workbooks.Open(xStrPath & "\" & xFile)
        ActiveSheet.UsedRange.Copy xSht.Range("A" & Rows.Count).End(xlUp).Offset(1)
        xWb.Close False
        xFile = Dir
    Loop
    Application.ScreenUpdating = True
    Exit Sub
ErrHandler:
    MsgBox "no txt files", , "Kutools for Excel"
End Sub
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Tá an Cód an-chabhrach, is é an t-aon chód a fuair mé a fhaigheann comhaid txt ar an mórchóir agus is é an rud a theastaíonn uaim air ná Joyce agus Davinder freisin.
Is éard atá i gceist leis na comhaid .txt a bhaint amach agus iad go léir a ghreamú faoina chéile i gcolún ar leith. Ligeann an colún 'N' a rá.

Chomh maith leis sin, ní mór fios a bheith agat an mbeidh sé indéanta "más coinníoll" a chur leis chun na comhaid .txt a allmhairítear a bheith mar a leanas.
má thosaíonn na comhaid .txt leis an litir 'A' ansin le greamú ar 'bhileog 1' ag tosú le cill 'N2'
agus má thosaíonn na comhaid .txt leis an litir 'B' ansin greamaigh ar 'Bileog 2' ag tosú le cill 'N2'
eile MsgBox le bheith "Cuspóir comhaid .txt neamhaitheanta".

go raibh maith agat roimh ré
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
D'oibrigh an cód seo domsa ach fós féin, ní mór dom roinnt a athrú ann.

*Ba mhaith liom é a ghreamú ar an mbileog chéanna gan leathanach nua a oscailt agus ansin é a chóipeáil mar go dtógann sé níos mó ama.

*ní mór coinníoll a chur isteach má tá comhaid txt iompórtáilte le greamú ar bhileog 1 má thosaíonn sé le litir A agus má iompórtáladh go Bileog 2 iad má thosaíonn sé le litir B


Fo-chóip 3()
Dim xWb Mar Leabhar Oibre
Dim xToBook Mar Leabhar Oibre
Dim xStrPath Mar Teaghrán
Dim xFileDialog Mar FileDialog
Dim xFile Mar Teaghrán
Dim xFiles Mar Bhailiúchán Nua
Dim i Chomh fada
Dim LastRow Chomh fada
Dim Rng Mar Raon
Socraigh xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
xFileDialog.AllowMultiSelect=Bréagach
xFileDialog.Title = "Roghnaigh fillteán [Kutools le haghaidh Excel]"
Má tá xFileDialog.Show = -1 Ansin
xStrPath = xFileDialog.SelectedItems(1)
Deireadh Má
Má tá xStrPath="" Ansin Scoir Fo
Más Ceart(xStrPath, 1) <> "\" Ansin xStrPath = xStrPath & "\"
xFile = Dir(xStrPath & "*.txt")
Má tá xFile="" Ansin
MsgBox "Níor aimsíodh comhaid", vbInformation, "Kutools for Excel"
Fo-Scoir
Deireadh Má
Déan Cé go bhfuil xFile <>"""
xFiles.Cuir xFile, xFile
xFile = Dir()
Lúb
Raon ("N2").Roghnaigh
Socraigh xToBook = An Leabhar Oibre Seo
Má tá xFiles.Count > 0 Ansin
Le haghaidh i = 1 Go xFiles.Count
Socraigh xWb = Leabhair Oibre.Open(xStrPath & xFiles.Item(i))
xWb.Gníomhachtaigh
'Na sonraí txt a roghnú agus a chóipeáil
Raon (Roghnú, Roghnú.End(xlDown)).Roghnaigh
Roghnú.Cóip
xToBook.Gníomhach
ActiveSheet.Greamaigh
Selection.End(xlDown).Fritháireamh(1).Roghnaigh
Ar Lean Earráid Aghaidh
Ar Earráid TéighTo 0
xWb.Dún Bréagach
Ar Aghaidh
Deireadh Má
Fo Deireadh
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Tá brón orm, tá mo lámha ceangailte
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit, ritheann mo chód ach ní allmhairíonn sé ach an chéad chomhad. Deir sé go raibh earráid mhodha le haghaidh cóipe. Aibhsíonn an dífhabhtóir an líne cód seo a leanas. Aon smaointe?


xWb.Bileoga Oibre(1). Cóipeáil i ndiaidh:=xToBook.Sheets(xToBook.Sheets.Count)
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Tá an fhadhb chéanna agam, aon réitigh a aimsíodh?
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Hey Katie,
Tá a fhios agam go bhfuil do thuairim sean go leor, ach thug mé aghaidh ar an bhfadhb chéanna agus shocraigh mé é ar an mbealach seo: Ní mór an modúl a chur isteach i bhfofhillteán den tionscadal gníomhach .xlsx. Rinne mé botún an cód a chóipeáil isteach i bhfofhillteán de mo PERSONAL.XLSB áit a stórálaim mo mhacraí de ghnáth agus déanann sé le mo mhacraí eile, ach ní leis an gceann seo.
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Conas a scriosfá na bileoga sa chód vba mura dteastaíonn uait dúbailt ar an modúl a ath-fhorghníomhú?
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Ár leithscéal, a Harsh, bí cúramach gan allmhairiú arís agus arís eile.
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit ba mhaith liom cosc ​​a chur le nialais roimhe seo a bhaint in excel.

Tá mé iarracht thíos cód ach nach bhfuil sé ag obair


Fothástáil()
Dim xWb Mar Leabhar Oibre
Dim xToBook Mar Leabhar Oibre
Dim xStrPath Mar Teaghrán
Dim xFileDialog Mar FileDialog
Dim xFile Mar Teaghrán
Dim xFiles Mar Bhailiúchán Nua
Dim I Chomh Fada
Dim j Chomh fada
Socraigh xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
xFileDialog.AllowMultiSelect=Bréagach
xFileDialog.Title = "Roghnaigh fillteán"
Má tá xFileDialog.Show = -1 Ansin
xStrPath = xFileDialog.SelectedItems(1)
Deireadh Má
Má tá xStrPath="" Ansin Scoir Fo
Más Ceart(xStrPath, 1) <> "\" Ansin xStrPath = xStrPath & "\"
xFile = Dir(xStrPath & "*.txt")
Má tá xFile="" Ansin
MsgBox "Níor aimsíodh comhaid", vbInformation, "Kutools for Excel"
Fo-Scoir
Deireadh Má
Déan Cé go bhfuil xFile <>"""
xFiles.Cuir xFile, xFile
xFile = Dir()
Lúb
Socraigh xToBook = An Leabhar Oibre Seo
Má tá xFiles.Count > 0 Ansin
Do I = 1 Go xFiles.Count
Socraigh xWb = Leabhair Oibre.Open(xStrPath & xFiles.Item(I))
ActiveSheet.Cells.NumberFormat = "@" 'Tá sé seo chun excel a dhéanamh i bhformáid téacs roimh na sonraí téacschomhad a ghreamú
xWb.Bileoga Oibre(1).Cóip Tar éis:=xToBook.Sheets(xToBook.Sheets.Count)
Ar Lean Earráid Aghaidh
ActiveSheet.Name = xWb.Name
Ar Earráid TéighTo 0
xWb.Dún Bréagach
Ar Aghaidh
Deireadh Má
Fo Deireadh
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Mar sin féin, is féidir leat triail a bhaint as feidhm Bain Leading Zeros de Kutools le haghaidh Excel chun gach nialais tosaigh a bhaint as an roghnú tar éis allmhairithe.
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
ach níl mé ag iarraidh a bhaint. Ba mhaith liom cosc ​​a chur ar na nialais roimhe seo a bhaint.
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Más mian leat na nialais tosaigh a choinneáil, is féidir leat iad a fhormáidiú mar fhormáid téacs de réir Formáid Cell.
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit, conas a dhéanann tú an cód seo a mhodhnú chun *.comhaid txt a chur isteach in ord: 1,2,3,4,5,6,7,8,9,10,11, etc. Faoi láthair cuireann an cód comhaid mar seo a leanas isteach:1,10,11,12,13,14,15,16,17,18,19,2,20,21, XNUMX, srl. Go raibh maith agat!
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
an bhfuil seans ar bith ann nach nglacfar ach cuid áirithe as ainmneacha comhaid txt?

de réir an chóid thuas a bhfuil ainm na bileoige ar fad á ghlacadh.
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Go raibh míle maith agat rinne an jab in office 2007 excel
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit, ritheann mo chód ach ní allmhairíonn sé ach an chéad chomhad. Deir sé go raibh earráid mhodha le haghaidh cóipe. Aibhsíonn an dífhabhtóir an líne cód seo a leanas. Aon smaointe?


xWb.Bileoga Oibre(1). Cóipeáil i ndiaidh:=xToBook.Sheets(xToBook.Sheets.Count)
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Hey Martinho,
Bhí an Fhadhb chéanna agam agus réitigh mé í tríd an líne seo a athrú:
Socraigh xToBook = An Leabhar Oibre Seo
chun
Socraigh xToBook = ActiveWorkbook
B'fhéidir go gcabhraíonn sé seo.
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
0

tá cuidiú ag teastáil uaim níl aon smaoineamh agam vba excel ba mhaith liom comhaid téacs iolracha cosúil le 13000 a iompórtáil. tá an t-ainm comhaid téacs mar an gcéanna leis an gcill mar shampla (c1=112 mar sin is é 112 an t-ainm comhaid téacs freisin) ciallaíonn sé go bhfuil an comhad téacs 112 Íosluchtaigh c112
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
tá cuidiú ag teastáil uaim níl aon smaoineamh agam vba excel ba mhaith liom comhaid téacs iolracha cosúil le 13000 a iompórtáil. tá an t-ainm comhaid téacs mar an gcéanna leis an gcill mar shampla (c1=112 mar sin is é 112 an t-ainm comhaid téacs freisin) ciallaíonn sé go bhfuil an comhad téacs 112 Íosluchtaigh c112
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Oibríonn an cód ach iompórtálann sé gach comhad téacs chuig cluaisín nua sa leabhar oibre. Aon smaoineamh cén áit sa chód a d'fhéadfaí é seo a athrú chun an comhad téacs nua a allmhairiú ar an mbileog oibre chéanna faoi bhun na sonraí ón gcomhad téacs deiridh?
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Sa chód thíos más mian liom an fillteán a shonrú seachas an cosán a roghnú gach uair iompórtáil téacschomhad , cén modhnú atá le déanamh

CÓD VBA:

Fo-IompórtáilCSVsWithReference()
'UpdatebyKutoolsforExcel20151214
Dim xSht Mar Bhileog Oibre
Dim xWb Mar Leabhar Oibre
Dim xStrPath Mar Teaghrán
Dim xFileDialog Mar FileDialog
Dim xFile Mar Teaghrán
Ar Earráid TéighTo ErrHandler
Socraigh xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
xFileDialog.AllowMultiSelect=Bréagach
xFileDialog.Title = "Roghnaigh fillteán [Kutools le haghaidh Excel]"
Má tá xFileDialog.Show = -1 Ansin
xStrPath = xFileDialog.SelectedItems(1)
Deireadh Má
Má tá xStrPath="" Ansin Scoir Fo
Socraigh xSht = ThisWorkbook.ActiveSheet
If MsgBox("Glan an leathán reatha roimh iompórtáil?", vbYesNo, "Kutools for Excel") = vbYes Ansin xSht.UsedRange.Clear
Application.ScreenUpdating = Bréagach
xFile = Dir(xStrPath & "\" & "*.txt")
Déan Cé go bhfuil xFile <>"""
Socraigh xWb = Leabhair Oibre.Open(xStrPath & "\" &xFile)
ActiveSheet.UsedRange.Copy xSht.Range("A" & Rows.Count).Deireadh(xlUp).Fritháireamh(1)
xWb.Dún Bréagach
xFile = Dir
Lúb
Feidhmchlár.ScreenUpdating = Fíor
Fo-Scoir
Earráid:
MsgBox "gan comhaid txt", , "Kutools le haghaidh Excel"
Fo Deireadh
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit, bain triail as an gcód thíos
Sub Test()
'UpdatebyExtendoffice6/7/2016
    Dim xWb As Workbook
    Dim xToBook As Workbook
    Dim xStrPath As String
    Dim xFile As String
    Dim xFiles As New Collection
    Dim I As Long
    xStrPath = "C:\Users\AddinsVM001\Desktop\test" 'Here is the parth you can modify
    If Right(xStrPath, 1) <> "\" Then xStrPath = xStrPath & "\"
    xFile = Dir(xStrPath & "*.txt")
    If xFile = "" Then
        MsgBox "No files found", vbInformation, "Kutools for Excel"
        Exit Sub
    End If
    Do While xFile <> ""
        xFiles.Add xFile, xFile
        xFile = Dir()
    Loop
    Set xToBook = ThisWorkbook
    If xFiles.Count > 0 Then
        For I = 1 To xFiles.Count
            Set xWb = Workbooks.Open(xStrPath & xFiles.Item(I))
            xWb.Worksheets(1).Copy after:=xToBook.Sheets(xToBook.Sheets.Count)
            On Error Resume Next
            ActiveSheet.Name = xWb.Name
            On Error GoTo 0
            xWb.Close False
        Next
    End If
End Sub

Is é "C:\Users\AddinsVM001\Desktop\test" an cosán fillteáin ar féidir leat an comhad téacs a iompórtáil uaidh, athraigh é de réir mar is gá duit.
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit, go raibh maith agat as do chód luachmhar VBA.
Mar sin féin, teastaíonn cód uaim le haghaidh comhaid txt iolracha isteach 'a single sheet in the worksheet, not an individual sheet for each txt file'.
Cad ba cheart dom do chód a chur in eagar le haghaidh mo chuspóra?

Go raibh maith agat,
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit, bain triail as an gcód thíos
Sub Test()
    'UpdatebyExtendoffice 10/26/2022
    Dim xWb As Workbook
    Dim xToBook As Workbook
    Dim xStrPath As String
    Dim xFileDialog As FileDialog
    Dim xFile As String
    Dim xFiles As New Collection
    Dim I As Long
    Dim J As Long
    Dim xRg As Range
    Dim xSaveRg As Range
    Dim xSh As Worksheet
    
    Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
    xFileDialog.AllowMultiSelect = False
    xFileDialog.Title = "Select a folder [Kutools for Excel]"
    If xFileDialog.Show = -1 Then
        xStrPath = xFileDialog.SelectedItems(1)
    End If
    If xStrPath = "" Then Exit Sub
    If Right(xStrPath, 1) <> "\" Then xStrPath = xStrPath & "\"
    xFile = Dir(xStrPath & "*.txt")
    If xFile = "" Then
        MsgBox "No files found", vbInformation, "Kutools for Excel"
        Exit Sub
    End If
    Do While xFile <> ""
        xFiles.Add xFile, xFile
        xFile = Dir()
    Loop
    Set xToBook = ThisWorkbook
    Set xSh = xToBook.Sheets.Add
    Set xRg = xSh.Range("A1")
    J = 1
    Application.DisplayAlerts = False
    Application.ScreenUpdating = False
    If xFiles.Count > 0 Then
        For I = 1 To xFiles.Count
            Set xWb = Workbooks.Open(xStrPath & xFiles.Item(I))
            Set xSaveRg = xWb.Worksheets(1).UsedRange
            J = xSaveRg.Rows.Count + 1 + J
            Debug.Print xRg.Address
            xSaveRg.Copy Destination:=xRg
            On Error Resume Next
            xWb.Close False
            
            Set xRg = xSh.Cells(J, 1)
        Next
    End If
    Application.ScreenUpdating = True
    Application.DisplayAlerts = True
End Sub
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Oibríonn sé seo go breá. Ach nuair a allmhairíonn sé athainmníonn sé bileoga le name.txt conas é a dhéanamh gan ach an t-ainm a choinneáil gan síneadh .txt a chur leis an mbileog?
Rátáil 3.5 as 5
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Fuair ​​​​ceart go leor nvm freagra le cabhair Google.
líne athsholáthair:
ActiveSheet.Name = xWb.Name
sé le:
ActiveSheet.Name = Ar chlé(xWb.Name, Len(xWb.Name)-4)
bhainfí na 4 litir dheireanacha ó ainm na bileoige. Go héifeachtach a thabhairt dom cad a theastaigh uaim. ainm sin .txt
Cheers
Rátáil 4 as 5
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
is féidir leis an gcód thíos sonraí a roinnt ina gcolúin bunaithe ar spás nó ar chluaisín agus comhad téacs á iompórtáil go bileoga. Ach níl mé ag iarraidh cluaisín ar leith do gach comhad txt ba mhaith liom iad go léir faoi aon bhileog amháin. Tá an fhaisnéis san fhormáid chéanna do gach comhad. . Cad is féidir a mhionathrú chun gur leathán amháin é seo go léir in ionad gach comhad a iompórtáladh a bheith ina chluaisín nua ar bith agus bheifí buíoch as gach cabhair

Fo-IompórtáilTextToExcel()
'UpdatebyExtendoffice20180911
Dim xWb Mar Leabhar Oibre
Dim xToBook Mar Leabhar Oibre
Dim xStrPath Mar Teaghrán
Dim xFileDialog Mar FileDialog
Dim xFile Mar Teaghrán
Dim xFiles Mar Bhailiúchán Nua
Dim I Chomh Fada
Dim xIntRow Chomh fada
Dim xFNum, xFArr Chomh fada
Dim xStrValue As Teaghrán
Dim xRg Mar Raon
Dim xArr
Socraigh xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
xFileDialog.AllowMultiSelect=Bréagach
xFileDialog.Title = "Roghnaigh fillteán [Kutools le haghaidh Excel]"
Má tá xFileDialog.Show = -1 Ansin
xStrPath = xFileDialog.SelectedItems(1)
Deireadh Má
Má tá xStrPath="" Ansin Scoir Fo
Más Ceart(xStrPath, 1) <> "\" Ansin xStrPath = xStrPath & "\"
xFile = Dir(xStrPath & "*.txt")
Má tá xFile="" Ansin
MsgBox "Níor aimsíodh comhaid", vbInformation, "Kutools for Excel"
Fo-Scoir
Deireadh Má
Déan Cé go bhfuil xFile <>"""
xFiles.Cuir xFile, xFile
xFile = Dir()
Lúb
Socraigh xToBook = An Leabhar Oibre Seo
Ar Lean Earráid Aghaidh
Application.ScreenUpdating = Bréagach
Má tá xFiles.Count > 0 Ansin

Do I = 1 Go xFiles.Count
Socraigh xWb = Leabhair Oibre.Open(xStrPath & xFiles.Item(I))
xWb.Bileoga Oibre(1). Cóipeáil i ndiaidh:=xToBook.Sheets(xToBook.Sheets.Count)

ActiveSheet.Name = xWb.Name

xWb.Dún Bréagach
xIntRow = ActiveCell.CurrentRegion.Rows.Count
Le haghaidh xFNum = 1 Go xIntRow
Socraigh xRg = ActiveSheet.Range("A" & xFNum)
xArr = Scoilt(xRg.Text, "")
Má tá UBound(xArr) > 0 Ansin
Le haghaidh xFArr = 0 Go UBound(xArr)
Má tá xArr(xFArr) <> "" Ansin
xRg.Value = xArr(xFArr)
Socraigh xRg = xRg.Offset(ColumnOffset:=1)
Deireadh Má
Ar Aghaidh
Deireadh Má
Ar Aghaidh
Ar Aghaidh
Deireadh Má
Feidhmchlár.ScreenUpdating = Fíor
Fo Deireadh
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit, Daniel, bain triail as an gcód thíos, iompórtálann sé gach comhad téacs i mbileog amháin darb ainm txt.
Tabhair faoi deara: má tá an t-ainm téacs mar an gcéanna leis an ainm bileoige atá ann cheana féin, ní féidir an comhad téacs a allmhairiú.
Sub ImportTextToExcel2()

'UpdatebyExtendoffice20230106

Dim xWb As Workbook

Dim xToBook As Workbook

Dim xStrPath As String

Dim xFileDialog As FileDialog

Dim xFile As String

Dim xFiles As New Collection

Dim I As Long

Dim xIntRow As Long

Dim xFNum, xFArr As Long

Dim xStrValue As String

Dim xRg As Range

Dim xArr

Dim xRowL, xRowH As Integer

Dim xTxtWS, xWSD As Worksheet

Dim xTxtWS_Rg As Range

Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)

xFileDialog.AllowMultiSelect = False

xFileDialog.Title = "Select a folder [Kutools for Excel]"

If xFileDialog.Show = -1 Then

xStrPath = xFileDialog.SelectedItems(1)

End If

If xStrPath = "" Then Exit Sub

If Right(xStrPath, 1) <> "\" Then xStrPath = xStrPath & "\"

xFile = Dir(xStrPath & "*.txt")

If xFile = "" Then

MsgBox "No files found", vbInformation, "Kutools for Excel"

Exit Sub

End If

Do While xFile <> ""

xFiles.Add xFile, xFile

xFile = Dir()

Loop

Set xToBook = ThisWorkbook

On Error Resume Next

Set xTxtWS = xToBook.Worksheets("Txt")

If IsNull(xTxtWS) Or IsEmpty(xTxtWS) Then

    Set xTxtWS = xToBook.Worksheets.Add

    xTxtWS.Name = "Txt"

End If

Application.ScreenUpdating = False

Application.DisplayAlerts = False

xTxtWS.Activate

If xFiles.Count > 0 Then

xRowL = 1

For I = 1 To xFiles.Count

Set xWb = Workbooks.Open(xStrPath & xFiles.Item(I))

xWb.Worksheets(1).Copy after:=xToBook.Sheets(xToBook.Sheets.Count)

Set xWSD = xToBook.Sheets(xToBook.Sheets.Count)

xTxtWS.Activate

xWb.Close False

xIntRow = xWSD.UsedRange.CurrentRegion.Rows.Count

    For xFNum = 1 To xIntRow

        Set xRg = xWSD.Range("A" & xFNum)

        xArr = Split(xRg.Text, " ")

        Set xTxtWS_Rg = xTxtWS.Cells.Range("A" & xRowL)

'        If UBound(xArr) > 0 Then

            For xFArr = 0 To UBound(xArr)

                If xArr(xFArr) <> "" Then

                xTxtWS_Rg.Value = xArr(xFArr)

                Set xTxtWS_Rg = xTxtWS_Rg.Offset(ColumnOffset:=1)

                End If

            Next

'        End If

xRowL = xRowL + 1

    Next

xWSD.Delete

Next

End If

Application.ScreenUpdating = True

Application.DisplayAlerts = 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