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

実行するとまっさらなワークシートが画像のように変わるプログラムを作れというものです。

条件があって「For ~ Next、If~Else~EndIfを使う,可能であればModも使う」

というものですが調べてみてもわかりません。

プログラムの仕方またはプログラムに必要なヒントのようなものをおしえていただけると幸いです。

よろしくお願いします。

「excelのVBAを使う問題でわからない」の質問画像

A 回答 (3件)

まだ間に合うのなら


立てた式を補足してください
    • good
    • 0

冬休みの課題なのかな?


No.1さんのお礼の回答を読むとコード化が分からないとのことでしたので、
コード化のヒントを。

1.セルA5に4を入力する時は下記のように記述します
Cells(5,1).Value = 4
2.セルA1~A5に1~5を入力したいときには下記のように記述します。
For x = 1 To 5
Cells(x,1).Value = x
Next
3.セルA5、B4の背景色を黄緑色、水色に変えるには下記のように記述します。
Cells(5,1).Interior.ColorIndex = 4 ' 黄緑色
Cells(4,2).Interior.ColorIndex = 8 ' 水色
4.条件式の書き方は下記の通り
If Cells(1,1).Value >= 5 Then ' セルA1に5以上の数値があるかどうか
Cells(1,2).Value = "5以上です" ' セルB1に「5以上です」と表示
Else
Cells(2,2).Value = "5未満です" ' セルB2に「5未満です」と表示
End If

ここまでで課題は解決できますが知っとくと便利なことを下記に。
5.1~10までの数をそれぞれ2で割った時の余りをセルA1からA10に表示
For x = 1 To 10 Step 1
Cells(x,1).Value = x Mod 2
Next

6.セルA1に2を表示して尚且つ背景色を黄緑に変えるときに簡単に記述するには。
With Cells(1,1)
.Value = 2
.Interior.ColorIndex = 4
End With

7.数値からマイナスを取り除きたい場合
Dim x As Integer
x = -10
Cells(1,1).Value = Math.Sqr(x ^ 2)
' Math.Sqrは平方根を出します。上の式は√(x*x)をやってるのと同じ。

では、頑張って下さい。
    • good
    • 0
この回答へのお礼

回答していただきありがとうございます。

ainaxさんのヒントを元にして問題を解くことができました。

本当にありがとうございました。

お礼日時:2009/01/09 15:39

何が聞きたいの?


考え方なのか、コードの書き方なのか、それとも両方なのか?

考え方
行、列、セルの値、色がそれぞれ値がどのように、変化しているか
どれかを基準にして、基準の値の変化と、他の3つ値と連動させる式を立てる
立てた式をコード化

考え方、考えた式を如何にコード化するかが、出題者の意図と思われるので、これ以上のアドバイスは控えます

頑張れ
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

聞きたいことはコードの書き方です。
式を立てるまでは一応分かったのですがそこからそれをコード化する部分がさっぱりわからないのです・・・

自分にはこの問題を解くために必要な最低限の知識がないみたいです・・・

せっかく回答いただいたのですが、自分がこの問題を解くにはもっと初歩のとこから勉強を始めないといけないと理解しました。
締め切りが迫っている問題なのでわずかな時間でこの問題を解くには自分には難しいと思いますが頑張ってみます。

回答していただき本当にありがとうございました。

お礼日時:2009/01/06 06:50

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