プロが教える店舗&オフィスのセキュリティ対策術

ロータス123で作ったマクロをエクセル用に作り直しています。

L123では{CELECT C3}{?}~ でC3のセルが入力待ちとなりますが、エクセルではどうするのかさっぱり解りません。その他のことはマニュアル本でなんとか解決していますが、ここで行きずまってます。どなたか、お助けください。

A 回答 (4件)

Excelでは、マクロの途中で、セルに値をセットしたい場合は、inputbox関数を使用するのが普通です。


たとえば、
Range("C3") = InputBox("入力して下さい", "C3の値")

のようにします。

この回答への補足

申し訳ありません。またまた言葉足らずでした。入力したいセル(入力データ)が沢山あるので、InputBoxを使わないで直接セルに入力したいのです。これをどうしてもマクロでやりたいのです。ロータス123(R5)では出来ました。

補足日時:2004/04/21 18:18
    • good
    • 0
この回答へのお礼

ありがとうございました。Range・Select・InputBoxを使ってなんとか順番にセルに入力できるようになりました。Boxがちょっとうるさいのですが、データとデータの間のコマンドも順に実行できます。皆様のご親切に感謝いたします。

お礼日時:2004/04/22 09:38

下記を参考に。


Sub test01()
For i = 3 To 20
x = InputBox("セルC"&i&"の値を入力")
Cells(i, "C") = x 'その行のC列に値をセット
'その後xを使って処理をし,yを算出する
Cells(j, "H") = y '例えばJ行H列のセルにyをセット
Next i
End Sub
    • good
    • 0
この回答へのお礼

ありがとうございました。rebellion様に申し上げたよな方法で先へ進めそうです。ご親切に感謝いたします。

お礼日時:2004/04/22 09:41

>セルC3に数値を入力した後、その数値を使って別の場所から数値を引っ張り出し別のセルに格納し、C4のセルに行き数値を入力してまた同じことを繰り返したいのです。



別の場所、別のセル、それは、同じシート内でしょうか?位置が固定されていないでしょうか???
KeyPress イベントを使用して試してください。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。KeyPressイベントをVBAのHelpでみましたが、良く解りませんでした。

お礼日時:2004/04/21 18:25

ロータスはまったく経験が無いのでぜんぜんはずしてたらすみません。

「入力待ち」ってそのセルをアクティブにすればいいんですよね?

だったら、
Sub TEST()
Sheets("Sheet1").Activate
Sheets("Sheet1").Range("C3").Activate
End Sub
じゃだめですか?

この回答への補足

早速のお知恵ありがとうございます。言葉足で申し訳ありません。
セルC3に数値を入力した後、その数値を使って別の場所から数値を引っ張り出し別のセルに格納し、C4のセルに行き数値を入力してまた同じことを繰り返したいのです。
数値入力が終わるまで(リターンキーが押されるまで)次のコマンドを実行しないようにしたいのです。
よろしくお願い致します。

補足日時:2004/04/21 14:22
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!