从单元格中选择日期并在保存时用作文件句柄

时间:2016-08-19 13:01:29

标签: vba excel-vba date macros excel

A2 = 201604

我正在尝试从Cell(日期)中获取值并使用相同的方法来保存文件。

但是在保存而不是打印值的日期时,请参阅以下代码:

Dim part1 as string
part1 = Range("A2").Value

ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\xxx- " & Format(part1, "MMM-YYYY") & ".xlsx" , FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False

2 个答案:

答案 0 :(得分:0)

201604不是约会对象。这只是一个数字。

您可以使用类似

的内容

myDate =" 01 /" &安培;对(a2,2)& " /"左(a2,4)

string yourAnswer = format(myDate," MMM-YYYY")

答案 1 :(得分:0)

问题是您使用typedef BOOL (WINAPI * my_func_ptr_t) (arg1, arg2, etc...); my_func_ptr_t FunctionA = NULL; /* ... */ FunctionA = (my_func_ptr_t) FunctionB( var1, var2, etc... ); 变量过早地将Date转换为String,因此'日期'已经被破坏,并且无法通过日期识别为日期它会在part1来电时点击。

Format()声明为part1或者只是跳过整个Date声明并将part1直接插入Range('A2').Value来电。