2016-12-22 4 views
1

セルに数値(値)を入力してください(または、「入力」をクリックするか、ボタンをクリックした後に表示されます)、結果が別のセルに表示されます。その後、セルは空になり、同じセルに次の値を入力できます。 たとえば、私は2つの細胞A2B2を持っています。最初は、私は常にデータを入力し、2番目には合計を表示します。だからセルB2に入ったら結果は "230"です。 ENTERを押すかの結果が空になった後にA2 100と入力した後、B2の結果は「330」になり、A2になります。そして、これは私が望むように何度もやることができます。Excel自動SUMフォームを作成する方法

コードを教えてください。前もって感謝します。

+4

あなたが今までに持っていたコードを投稿してください。何を試してみましたか? – Rdster

答えて

1

セル値が変更されたときにトリガーするマクロが必要です。次のコードは、ワークシートの変更イベントでトリガされ、変更されたセルがA2で空でないかどうかを確認します。その場合は、A2の値を現在の値B2に追加し、A2をnullに戻します。

Private Sub Worksheet_Change(ByVal Target As Range) 
    Dim KeyCells As Range 

    Set KeyCells = Range("A2") 

    If Not Application.Intersect(KeyCells, Range(Target.Address)) Is Nothing _ 
     And Range("A2") <> "" Then 

     Range("B2").Value = Range("B2").Value + Range("A2").Value 
     Range("A2").Value = "" 
     Range("A2").Select 

    End If 
End Sub 

あなたの現在のワークシートにマクロとしてこれを追加して、あなたがA2に入る任意の数字はB2の現在の値に加算されます。

これは簡単なサンプルコードですので、必要に応じて変更する必要があります。私は、数字ではなく、テキストでもあることを検証する研究をします。

1

お客様の要件に応じて必要なコードはPFBです。このマクロは、セルA2とB2の値を合計し、セルB2に出力します。

Sub AutoSumming() 

'Declaring variables 
Dim Variable1, Total As Long 

'Initializing the variables 
Variable1 = Range("A2").Value 
Total = Range("B2").Value 

'Performing the sum 
Total = Total + Variable1 

'Reassign values back to cells 
Range("B2").Value = Total 
Range("A2").Value = "" 

End Sub 
+1

最後のコードが完璧に機能するように助けてくれてありがとう –

関連する問題