- ベストアンサー
エクセル 自動転載
・入力欄は1行目です。 ・入力欄は情報を都度上書きします。 ・3行目からリストが始まりますので 3行目(1番)・4行目(2番)…と次々自動転載する方法を教えて下さい。 よろしくお願いいたします。 ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ 入力欄 1月2日 もも 5 1:1月1日 リンゴ 4 ------------------------------ 2:1月2日 もも 5 ------------------------------ 3: ------------------------------
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
S2~BG2に入力したものを S7~BG7 S8~BG8 S9~BG9 に入力するには、以下のコードにすればOKです。 n = 7 Do If Cells(n, 19) = "" Then For a = 19 To 59 Cells(n, a).Value = Cells(2, a) Next Exit Do Else n = n + 1 End If Loop 試してみてください。
その他の回答 (3)
- qualheart
- ベストアンサー率41% (1451/3486)
VBを使った手法でも良いのでしょうか? 以下の手順で可能だと思います。 1.表示→ツールバー→コントロールツールボックスでコントロールツールボックスを表示します。 2.コントロールツールボックスでコマンドボタン(ボタンのアイコン)を選択し、入力欄の右横など適当な場所にボタンを作成します。 3.追加したボタンを右クリックし、「プロパティ」を選択します。 4.「Caption」欄でボタンに表示するテキスト(「追加」など)を入力し、プロパティを閉じます。 5.追加したボタンを右クリックし、「コードの表示」を選択します。 6.VBが起動しますので、「Private Sub CommandButton1_Click()」と「End Sub」の間に以下のコードをコピーします。 n = 3 Do If Cells(n, 1) = "" Then Cells(n, 1).Value = n - 2 & ": " & Cells(1, 2) Exit Do Else n = n + 1 End If Loop これで、入力欄に文字を追加し、[追加]をクリックすれば、3行目以降のA列セルで空いているセルに入力していきます。 このスクリプトは、入力欄がB1、自動転載するセルがA列3行目以降になっています。入力欄を日付、名前、個数で分けている場合などは、また少し変わってきますので、その場合は言ってくだされば、その場合のVBも記載させていただきます。
お礼
ありがとうございます。 実際には S2~BG2に入力したものを S7~BG7 S8~BG8 S9~BG9 ・ ・ ・ に転写できるよう 教えていただけないでしょうか。 よろしくお願いいたします。
- n-jun
- ベストアンサー率33% (959/2873)
参考URL エクセル 自動転載 http://okwave.jp/qa3315138.html
- hana-hana3
- ベストアンサー率31% (4940/15541)
「データフォーム」では駄目ですか? http://www.jpita.or.jp/hpv3/ziten/mokutekibetu/ex_13.html
お礼
ありがとうございます。 入力欄も手打ちでなく、条件式のIFですので これをどうにか活かす方法はないのでしょうか。 もしおわかりでしたら教えて下さい。 よろしくお願いいたします。
お礼
ありがとうございます。 おかげさまで 効率化がはかれそうです。