VBA – 用于循环date,转移到另一个工作表

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

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 

但是当我这样做的时候,date不会出现在表格5上。 相反,八个主题标签########完全没有数字填充空格。 我不知道我做错了什么,或者有更好的方法来做到这一点。 表4中的date采用传统的格式。 8/7/2015如果这有什么区别。 任何帮助表示赞赏。

你的代码工作。

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

我同意其他人,这是一个列宽问题。 要自动修复它,试试这个:

 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 table5.Range("A1:D1").Columns.AutoFit 

.AutoFit会将每列调整到显示最宽单元格中所有字符所需的最小宽度。