Chcę zaprojektować plik, który może skopiować i wkleić plik w aktywnym arkuszu. Jednak ten plik zostanie zaktualizowany codziennie, a także zmienić jego nazwę. Dlatego chciałbym odnieść się do dynamicznej nazwy, więc do powiedzenia.

Sub stackoverflow()

' copy workbook to new worksheet

    Workbooks.Open Filename:= _
    "/Documents/Documenten/movementreport202001075.xlsx"
    Cells.Select
    Selection.Copy
    Windows("test").Activate
    ActiveSheet.Paste

End Sub

Na przykład „20200107” może jutro mieć wartość „20200108.xlsx”. Zależy to więc od daty, godziny i sekund pobrania raportu.

0
BHKES 7 styczeń 2020, 11:49

1 odpowiedź

Najlepsza odpowiedź

Możesz użyć funkcji formatu, aby umieścić go w formacie, który chcesz:

Workbooks.Open Filename:= "/Documents/Documenten/" & Format$(Date, "d.m.yyyy") & ".xlsx"

Wygląda na to, że chciałbyś używać listu dysku ...

Aktualizacja:

To ta sama koncepcja (wszystko, co robisz, jest formatowanie wartości łańcucha daty i ciągłości):

Workbooks.Open Filename:= "/Documents/Documenten/movementreport" & Format$(Date, "dmyyyy") & ".xlsx"

Zobacz, jak się teraz działa?

Nadal mówię, że prawdopodobnie będziesz chciał korzystać z litery dysku ...

0
braX 7 styczeń 2020, 09:36