Excel 如何通过单击命令按钮将值粘贴到特定单元格中

Excel 如何通过单击命令按钮将值粘贴到特定单元格中,excel,vba,excel-formula,Excel,Vba,Excel Formula,我正在尝试将值粘贴到给定的单元格是ActiveSheet。粘贴最佳选项是什么?为了重新表述这一点,我想通过单击按钮Main()将复制的内容粘贴到单元格A1上,然后单击按钮ElkhartEast(),我想将复制的内容粘贴到单元格A300中。当前代码: Sub Tennessee() Range("A600").Select ActiveSheet.paste End Sub Sub Alabama() Range("A900").Select ActiveSheet

我正在尝试将值粘贴到给定的单元格是ActiveSheet。粘贴最佳选项是什么?为了重新表述这一点,我想通过单击按钮Main()将复制的内容粘贴到单元格A1上,然后单击按钮ElkhartEast(),我想将复制的内容粘贴到单元格A300中。当前代码:

Sub Tennessee()
    Range("A600").Select
    ActiveSheet.paste
End Sub
Sub Alabama()
    Range("A900").Select
    ActiveSheet.paste
End Sub
Sub Main()
Range("A1").Select
ActiveSheet.paste
End Sub
Sub NorthCarolina()
    Range("A1200").Select
    ActiveSheet.paste

End Sub
Sub Pennsylvania()
    Range("A1500").Select
    ActiveSheet.paste
End Sub
Sub Texas()
    Range("A1800").Select
    ActiveSheet.paste
End Sub
Sub WestCoast()
    Range("A2100").Select
    ActiveSheet.paste
End Sub

Sub ElkhartEast()
    Range("A300").Select
    ActiveSheet.paste
End Sub

使用
选择
粘贴
不是正确的vba编码实践

以下代码使用
字符串
整数
(取决于您的需要)来保存该值并将其放置在特定的
单元格

Option Explicit
'If you need a number value then Integer
Dim intValue as Integer
'If you need a text value then String
Dim strValue as Integer

'As example I will use Integer
Sub Main()
   IntValue = Range("A1").Value
End Sub

Sub NorthCarolina()
   Range("A1200").Value = IntValue
End Sub

Sub Pennsylvania()
   Range("A1500").Value = IntValue
End Sub

Sub Texas()
   Range("A1800").Value = IntValue
End Sub
Sub WestCoast()
   Range("A2100").Value = IntValue
End Sub

Sub ElkhartEast()
   Range("A300").Value = IntValue
End Sub

Sub Tennessee()
   Range("A600").Value = IntValue
End Sub

Sub Alabama()
   Range("A900").Value = IntValue
End Sub
范围(“A600”)。选择
只会选择单元格。要粘贴该值,首先需要从单元格中复制该值
。选择
不会复制该值,只会在相应单元格上设置焦点。
ActiveSheet.Paste
将值(如果复制)粘贴到当前设置焦点的单元格中。如果我们不关注在工作表上单击的位置,这可能是非常随意的

相反,下面的代码会有所帮助:

Sub Tennessee()
        Range("A1").Copy
        Range("A2").PasteSpecial
End Sub