VBA - 对于循环日期,转移到另一个工作表

时间:2015-08-07 13:09:31

标签: excel vba excel-vba

我尝试将四个列从一个工作表基本复制并粘贴到另一个工作表。其中两列包含日期,我尝试了一个基本的for循环来运行信息并将其复制到下一个工作表。

For i = 2 To table4.UsedRange.Rows.Count
    table5.Cells(i, 1).Value = table4.Cells(i, 1).Value
    table5.Cells(i, 2).Value = table4.Cells(i, 5).Value
    table5.Cells(i, 3).Value = table4.Cells(i, 6).Value
    table5.Cells(i, 4).Value = table4.Cells(i, 7).Value
Next

然而,当我这样做时,日期不会出现在表格5上。相反,八个主题标签########填充空间,根本没有数字。我不确定我做错了什么,或者是否有更好的方法来做到这一点。表4中的日期采用传统格式。 2015年8月7日,如果这有任何区别。任何帮助表示赞赏。

2 个答案:

答案 0 :(得分:3)

您的代码有效。

确保: - 列足够宽 - 您的table5列1,2,3,4单元格格式设置为与table4列1,5,6,7相同的日期格式

答案 1 :(得分:1)

我同意其他人认为这是一个列宽问题。要自动修复它,请尝试以下操作:

.AutoFit

txtDate.Text = DateTime.Now.ToString("yyyy-MM-dd"); 会将每列调整为显示最宽单元格中所有字符所需的最小宽度。