- ベストアンサー
入力の方法
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
VBAの本を購入すると大体の本にはサンプルとして例がありますよ。 以下は、一例です。 1、C1セルに =TEXT(C2,"yy/mm") 入れて月度を表示させておく。 2、表示=>ツールバー でフォームのウイザードを表示、適当な場所にボタンを配置 3、ボタンを右クリックしてマクロの登録から新規作成、VBエディターが起動したら。 Sub ボタン1_Click() GYOU = Range("A65536").End(xlUp).Row + 1 Cells(GYOU, 1).Value = Range("C1").Value Cells(GYOU, 2).Value = Range("C2").Value Cells(GYOU, 3).Value = Range("C3").Value Cells(GYOU, 4).Value = Range("C4").Value End Sub をコピィして、閉じる。 ボタンを押して実行してみてください。 シンプルなので、内容を理解して自分なりに応用してみてください。
その他の回答 (3)
- hige_082
- ベストアンサー率50% (379/747)
横から失礼します 次の1行を追加してみてください Sub ボタン1_Click() Dim GYOU '追加 GYOU = Range("A65536").End(xlUp).Row + 1 Cells(GYOU, 1).Value = Range("C1").Value Cells(GYOU, 2).Value = Range("C2").Value Cells(GYOU, 3).Value = Range("C3").Value Cells(GYOU, 4).Value = Range("C4").Value End Sub
お礼
ご尽力いただき誠に有難うございました。 下記を追加して完成いたしました。 Dim GYOU '追加 今後ともよろしく御願いします。
- imogasi
- ベストアンサー率27% (4737/17069)
6行以下の表で、見るところC2:c4の場所は一定なのに 第7行も第8行でもC2:C4。第7目に入るデータを入力後、そのC2:C4値が第8行目用に変わっても、8行目はいいとして、第7行目もそれに変わっては困るので元のまま、と言う仕組みは作れない。第7行目の式を8行目に入力の前に消すでもしないと。 関数の基本を判ってない人の質問です。 エクセルは入力すべきセルを人間が判断して表を作るソフトなんだ(本質)。 この質問ではないが、関数でもできる課題でも、複雑な場合はVBAでやることをお勧めする。 例えば表の組み換えなどの問題だ。 正面から、データーフォームやVBAを勉強してください。 ーー こういう入力場所を1箇所(定まったまとまり)にして、多数のまとまりデータを入力すると言うのはシートには適さない。VBAのフォームなどに適した仕組みだ。
- mu2011
- ベストアンサー率38% (1910/4994)
フォームを利用したら如何でしょうか。
お礼
この方法は存じ上げていました。 もう少し発展的な方法がないかと考えていました。 ご尽力いただき誠に有難うございました。 今後ともよろしく御願いします。
お礼
ご尽力いただき誠に有難うございました。 下記をNo4の方の提案により追加して完成いたしました。 Dim GYOU '追加 今後ともよろしく御願いします。
補足
上の指示通り設定したところ、 C2,C3,C4 に値を入力して「ボタン1」クリックすると 1 警告 中断モードでコードを実行することは出来ません 2 Sub ボタン1_Click() 黄色に GYOU = 青色に Range("A65536").EndxlUp).Row + 1 に反転されます。 何処がまずいのでしょうか。 お手数ですがごしどういたたければさいわいです。 よろしく御願いします。