以正确的形式获取VBA中的日期格式

时间:2017-06-05 21:30:23

标签: vba date

我试图以mm.dd.yy的形式引用上一个星期五结束日期的文件。

我现在需要将该日期添加到字符串的末尾,结束字符串以便打开选择其他工作簿。这就是我现在所拥有的。

档案名称: 提交资料结束06.02.17.xlsx

这是我到目前为止所拥有的

<button
  ion-button
  type="submit"
  block
  [disabled]="!f.valid"
  (click)="onValidate(info)">Valider</button>

当我从输入格式为06.02.17的B2中读取它时,无论我做什么,我都无法从A1读取它,因为它将格式更改为m / d / yyyy。我试图复制它并粘贴为值。似乎没什么用。

当我尝试运行它时,我还打开了另一个工作簿。

有什么想法吗?谢谢!

2 个答案:

答案 0 :(得分:0)

尝试

Range("A1").Value = Format$(Date - Weekday(Date) - 1, "MM.DD.YY")

答案 1 :(得分:0)

要获取任何日期的上周五,请尝试以下UDF。如果Date NumberFormat与系统的日期格式相同,这应该可以正常工作。关键是CDate(),它根据Office应用程序默认的系统日期格式进行转换。

Option Explicit

Function GetLastFridayDate(AnyDate As Variant) As Date
    Dim dInput As Date, dLastFriday As Date
    dInput = CDate(AnyDate)
    dLastFriday = dInput - Weekday(dInput) + vbFriday - IIf(Weekday(dInput) > vbFriday, 0, 7)
    GetLastFridayDate = dLastFriday
End Function