gpt4 book ai didi

循环中的 VBA 复制和粘贴

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

我是 VBA 新手,需要一些帮助来解决这个问题。

我有 8 列,每列有 9 行。我想复制每一列并将其粘贴到特定范围内的另一张纸上。

我如何编码以下语句? “转到sheet2并复制第一列和2-9行并将其粘贴到范围内的sheet1(“C3:C10”),然后按求解器做一些其他工作人员,当所有这些都完成后,转到下一列并执行又是一样的”。

我发现如何为一列执行此操作,但我找不到如何执行循环。
这是我为第一列编写的代码。
我想对所有 8 列执行相同的操作。

Sub test1()

Worksheets("sheet 1").Range("c3:c10").Value = Worksheets("Sheet 2").Range("A2:A9").Value
Worksheets("Sheet 1").Range("C17").Value = "Y"
Worksheets("Sheet 1").Range("C32").Value = "Y"
SolverOk SetCell:="$E$96", MaxMinVal:=3, ValueOf:=Range("C104").Value,
ByChange:="$C$100", _
Engine:=1, EngineDesc:="GRG Nonlinear"
SolverSolve True

Worksheets("Sheet 3").Range("J2").Value = Worksheets("Sheet 1").Range("L24").Value

End Sub

最佳答案

你可以这样做。如果其他事情是可变的,可以使用 i 进行类似的调整也许。

Sub test1()

Dim i As Long

For i = 1 To 8
Worksheets("sheet 1").Range("c3:c10").Value = Worksheets("Sheet 2").Range("A2:A9").Offset(, i - 1).Value
Worksheets("Sheet 1").Range("C17").Value = "Y"
Worksheets("Sheet 1").Range("C32").Value = "Y"
SolverOk SetCell:="$E$96", MaxMinVal:=3, ValueOf:=Range("C104").Value, _
ByChange:="$C$100", Engine:=1, EngineDesc:="GRG Nonlinear"
solverSolve True
Worksheets("Sheet 3").Range("J2").Value = Worksheets("Sheet 1").Range("L24").Value
Next i

End Sub

关于循环中的 VBA 复制和粘贴,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51874959/

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