/ / Kopēt faila nosaukumu no vairākām darbgrāmatām uz šūnām citā darbgrāmatā - excel, vba, excel-vba

Nokopējiet faila nosaukumu no vairākām darbgrāmatām uz citu darbgrāmatu šūnām - excel, vba, excel-vba

Man ir mape ar daudzām darbgrāmatām, kur nepieciešams kopēt faila nosaukumus (un dažus citus datus) uz galveno darbgrāmatu. Es atklāju kodu, lai importētu datus, bet, iespējams, nevar importēt faila nosaukumu.

Pēc "" >>>>>> pielāgojiet šo daļu "Es mēģināju uzrakstīt kādu kodu, lai kopētu un ielīmētu faila nosaukumu, bet šķiet, ka tas nedarbojas.

Es izmantoju daļu ārpus "" >>>>>> Pielāgot šo daļu ", lai kopētu dažus citus datus, tāpēc man ir nepieciešams tikai kods, lai ievietotu manu nedarba kodu :)

Sub Import_to_Master()
Dim sFolder As String
Dim sFile As String
Dim wbD As Workbook, wbS As Workbook

Application.ScreenUpdating = False
Set wbS = ThisWorkbook
sFolder = wbS.Path & ""

sFile = Dir(sFolder)
Do While sFile <> ""

If sFile <> wbS.Name Then
Set wbD = Workbooks.Open(sFolder & sFile)

" >>>>>> Adapt this part

WName = ActiveWorkbook.Name
WName.Copy
Sheets("Combined").Range("N" & Rows.Count).End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues
Application.CutCopyMode = False

" >>>>>>

wbD.Close savechanges:=True "close without saving

End If

sFile = Dir "next file
Loop
Application.ScreenUpdating = True
End Sub

Atbildes:

1 atbilde Nr. 1
Sub Import_to_Master()

Dim sFolder As String
Dim sFile As String
Dim wbD As Workbook, wbS As Workbook

Application.ScreenUpdating = False
Set wbS = ThisWorkbook
sFolder = wbS.Path & ""

sFile = Dir(sFolder)
Do While sFile <> ""

If sFile <> wbS.Name Then
Set wbD = Workbooks.Open(sFolder & sFile)

" >>>>>> Adapt this part

wbS.Sheets("Combined").Range("N" & wbS.Sheets("Combined").Rows.Count).End(xlUp).Offset(1, 0).Value = sFile

" >>>>>>

wbD.Close savechanges:=True "close without saving

End If

sFile = Dir "next file
Loop
Application.ScreenUpdating = True
End Sub

0 atbildei Nr. 2

Jūs varat tieši izmantot objektu wbD un tās īpašums .Name.

Es arī pievienoju atsauci uz lapu ("Kombinētais"), lai iegūtu labāku lasāmību:

Sub Import_to_Master()
Dim sFolder As String
Dim sFile As String
Dim wbD As Workbook, wbS As Workbook
Dim wSc As Worksheet

Application.ScreenUpdating = False
Set wbS = ThisWorkbook
"""Define the sheet
Set wSc = wbS.Sheets("Combined")
sFolder = wbS.Path & ""

sFile = Dir(sFolder)
Do While sFile <> ""

If sFile <> wbS.Name Then
Set wbD = Workbooks.Open(sFolder & sFile)

" >>>>>> Adapt this part
wSc.Range("N" & wSc.Rows.Count).End(xlUp).Offset(1, 0).value = wbD.Name

" >>>>>>

wbD.Close savechanges:=True "close without saving

End If

sFile = Dir "next file
Loop
Application.ScreenUpdating = True
End Sub

Saistītie jautājumi


Komentāri (0)

Pievieno komentāru