이 작은 매크로를 폴더에서 파일 이름을 가져오고, 정보를 가져 와서 다른 Excel 파일로 보내는 변수에 저장하기 위해 분할했습니다 ... 그리고 그것이 제가 .. . 지난 금요일에 작동하도록 할 수 있었지만 저장하는 것을 잊고 백업이 없습니다. (초보자 문제) 그래서 나는 그것이 다시 작동하도록 가까이에 있다고 확신하지만 작동하지 않는 이유를 찾지 못합니다 ....
누군가 날 pls를 도와 줄 수 ...
Dim Chemin As String, Fichier As String, timeStamp As String
Dim WB As Workbooks
'Variable qui définit le fichier dans lequel le rapport est fait.
'Set WB = Workbooks("EXCEL PATH WHERE I WRITE")
'Définit le répertoire contenant les fichiers
Chemin = "PATH WHERE THE FILES ARE STORE"
'Variable qui récupère le nom des fichier peut importe l'extension.
Fichier = Dir(Chemin & "*.*")
'variable qui récupère le timestamp
timeStamp = Split(Fichier, "_")(2)
timeStamp = Split(timeStamp, ".")(0)
'Boucle qui parse le nom de tous les fichiers
Do While Len(Fichier) > 0
'Variable pour aller à la derniere cellule de la la colonne
emptyRowB = Sheet.Range("B" & Rows.Count).End(xlUp).Row + 1
'Remplissage des données
Workbooks("MyRapportFile.xlsm").Worksheets("Sheet1").Cells(emptyRowB, 2).Value = timeStamp
Loop
End Sub
VBA의 경우에서 emptyRowB = Sheets("HP")…
와 같이 지정하지 않는 한 통합 문서 가 명확하지 않습니다 Workbooks("HP_Control-Copy.xlsm").Worksheets("HP")
.
wb
해당 통합 문서로 변수를 설정했기 때문에
Set wb = Workbooks("HP_Control-Copy.xlsm")
당신은 그것을 사용할 수 있습니다
Dim emptyRowB As Long
emptyRowB = wb.Worksheets("HP").Range("B" & Rows.Count).End(xlUp).Row + 1
여기뿐만 아니라
wb.Worksheets("HP").Cells(emptyRowB, 2).Value = TimeStamp
일반적으로 개체를 사용할 워크 시트와 통합 문서를 지정하지 Range
않거나 Cells
쓰지 않는 것이 좋습니다. 그렇지 않으면 VBA는 확실히 알 수 없기 때문에 무언가를 가정하고 다른 것을 가정하고 잘못된 것을 선택할 수 있습니다. Excel에서 추측하지 마십시오!
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다