gpt4 book ai didi

excel - 遍历文件夹并复制第一张工作表的值和格式

转载 作者:行者123 更新时间:2023-12-04 20:52:56 27 4
gpt4 key购买 nike

我一直在研究将文件夹中的第一个工作表复制到另一个工作簿的 VBA 代码。

代码正确复制了数据,但是在保存时我得到了某些有错误的单元格(#Ref),这是由于一些复制的单元格具有公式。

我希望复制到数据以保留原始格式,但只有值。或者,具有 2 个错误的单元格是具有索引匹配公式的 M11 和 O11,如果可以在没有公式的情况下粘贴这 2 个单元格值,则复制的其余数据会很好。

任何帮助将不胜感激。

我曾尝试使用 PasteSpecial xlPasteValuesAndNumberFormats 和 .PasteSpecial xlPasteFormats 但我不确定如何修改复制功能。

Sub MergeMultipleWorkbooks()

Dim Path, Filename As String

Path = "C:\Users\User\Desktop\ProMacro\"
Filename = Dir(Path & "*.xlsx")

Do While Filename <> ""

With Workbooks.Open(Filename:=Path & Filename, ReadOnly:=True)
.Worksheets(1).Copy After:=ThisWorkbook.Sheets(1)

.Close False
End With

Filename = Dir()
Loop

MsgBox "Files has been copied Successfull", , "MergeMultipleExcelFiles"
End Sub

代码从文件夹中的指定文件复制第一张表,我唯一的问题是某些单元格在将文件保存为已复制的公式时将具有#Ref。

最佳答案

打开工作簿后,复制工作表的所有内容并将其作为值粘贴到同一个工作表中。这是你放在中间的代码

With Workbooks.Open(Filename:=Path & Filename, ReadOnly:=True) and .Worksheets(1).Copy After:=ThisWorkbook.Sheets(1)



格式不变,公式被值替换。

这不是一个非常友好的解决方案,但在考虑并尝试找出一个好的解决方案后,我没有想到其他任何解决方案。

关于excel - 遍历文件夹并复制第一张工作表的值和格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53976270/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com