gpt4 book ai didi

excel - 将所有工作表中固定范围内的值粘贴到一张工作表上

转载 作者:行者123 更新时间:2023-12-04 20:46:55 25 4
gpt4 key购买 nike

我有大约 30 个工作表(一个月中的几天),每张工作表上

我想复制范围内的值 A293:AL293A296:AL296在每个工作表上到我的事件工作表(例如,从每月 1 日到 30 日的连续行中)。

这些范围使用 MINPERCENTILE公式分别。但是,当我运行宏时,单元格包含 !REF 错误,因为复制的是公式而不是实际的单元格值。

我应该如何修改宏,使其复制和粘贴值而不是公式?

我从另一个用于将数据从 30 张纸复制并粘贴到一张纸中的宏修改的代码是:

Sub test()
Dim curRow As Integer
Dim activeWorksheet As Worksheet
Set activeWorksheet = ActiveSheet
curRow = 1
For Each ws In ActiveWorkbook.Worksheets
If Not ws.Name = activeWorksheet.Name Then
ws.Range("A293:AL293").Copy Destination:=activeWorksheet.Range(CStr(curRow) & ":" & CStr(curRow + 288))
curRow = curRow + 289
End If
Next ws
End Sub

我发现的另一个代码是:
Option Explicit
Sub CreateTempPSDReport()
Dim WS As Worksheet, Rept As Worksheet

Set Rept = Sheets("Temporary PSD Report")
Application.ScreenUpdating = False

'--> Loop through each worksheet except the report and
'--> Copy the set range to the report
For Each WS In ThisWorkbook.Worksheets
If Not WS.Name = "Temporary PSD Report" Then
WS.Range("A42", "I42").Rows.Copy
Rept.Cells(Rows.Count, "A").End(xlUp).Offset(1, 0).PasteSpecial _
Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
End If
Next
Application.ScreenUpdating = True
End Sub

但我不确定是什么
        WS.Range("A42", "I42").Rows.Copy
Rept.Cells(Rows.Count, "A").End(xlUp).Offset(1, 0).PasteSpecial _
Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False

部分可以。

谢谢!

最佳答案

要将这对行复制到摘要表中,您可以执行此操作。需要注意的两点

  • 使用 .Value 复制值而不是公式.在这种情况下,我使用了 .Value2
  • 你不需要复制和粘贴(除非你想复制格式),你可以简单地设置一个范围等于另一个范围内的值
    Sub test()
    Dim ws1 As Worksheet
    Dim ws2 As Worksheet
    Dim lngCnt As Long

    Set ws1 = ActiveSheet
    Application.ScreenUpdating = False
    For Each ws2 In ActiveWorkbook.Worksheets
    If Not ws1.Name = ws2.Name Then
    ws1.[a1].Offset(lngCnt, 0).Resize(1, 38).Value2 = ws2.Range("A293:AL293").Value2
    ws1.[a1].Offset(lngCnt + 1, 0).Resize(1, 38).Value2 = ws2.Range("A296:AL296").Value2
    lngCnt = lngnct + 2
    End If
    Next ws2
    Application.ScreenUpdating = True
    End Sub
  • 关于excel - 将所有工作表中固定范围内的值粘贴到一张工作表上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12668613/

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