Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
VBA-要循环日期,请转移到另一个工作表_Vba_Excel - Fatal编程技术网

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

VBA-要循环日期,请转移到另一个工作表,vba,excel,Vba,Excel,我试图将四列从一个工作表复制粘贴到另一个工作表。其中两列包含日期,我尝试了一个基本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 = ta

我试图将四列从一个工作表复制粘贴到另一个工作表。其中两列包含日期,我尝试了一个基本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上。相反,八个hashtag完全没有数字填充空间。我不确定我做错了什么,或者是否有更好的方法。表4中的日期为传统格式,如有差异,则为2015年8月7日。非常感谢您的帮助。

您的代码可以正常工作

确保: -这根柱子够宽的
-您的table5第1、2、3、4列单元格格式设置为与table4第1、5、6、7列相同的日期格式。我同意其他人的看法,这是一个列宽问题。要自动修复,请尝试以下操作:

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会将每列的宽度调整到显示最宽单元格中所有字符所需的最小宽度。

您复制的单元格是否包含任何公式,或者它们只是原始数字?可能是它复制了公式,但在新表中不起作用?不确定。您是否尝试过增加显示的列的宽度?听起来您的列太窄,无法显示数据。当Excel遇到这种情况时,它显示了避免有人在它被切断时将1000000美元错误地解释为1000美元。确保粘贴值的格式为日期格式,字体足够小,等等。这听起来肯定是列不够宽的问题。请增加列的宽度,看看这是否解决了问题。