プロが教えるわが家の防犯対策術!

Excel VBA をやり始めたばかりです。
やり方がかわからないので、質問させていただきます。
セルの中に、下のように九九の数式を入れたいです。

1×1=1 1×2=2 ・・・

9×1=9 9×2=18・・・

一応コードを書いてみたのですが、合っているのかわかりません。
それから、81通りのコードを書くには下のコードをコピーして、""←この間の文字を書き変えるしかないのでしょうか?あるのなら教えてください。

Sub セルの参照1()
Range("A1").Value="1×1=1"
End Sub

よろしくお願いします。

質問者からの補足コメント

  • 最初の疑問は解決しました!
    またわからないところが出てきたのでよければ回答お願いします!

    セルの中に整数を入力し、右隣にその整数が奇数か偶数なのか、結果?を表示させるように、VBAで設定したいのですが、全くやり方がわかりません。
    また、出来るなら、常に入力の度に表示されるようにするにはどうしたらいいですか?
    すみませんがよろしくお願いします。

      補足日時:2015/09/14 11:55

A 回答 (5件)

No.2・3・4です。



>ちなみにUNIXもわかりますか?
というコトですが、
UNIXは使ったコトがないので、わかりません。

お役に立てなくてごめんなさいね。m(_ _)m
    • good
    • 0

No.2・3です。



>セルの中に整数を入力し、右隣にその整数が奇数か偶数なのか、結果?を表示させるように

コードの書き方は人それぞれですが、
>また、出来るなら、常に入力の度に・・・
というコトですとChangeイベントのプロシージャにする必要があります。

仮にA列にデータを入力し、B列に「偶数・奇数」を表示させるとします。

画面左下の操作したいSheet見出し上で右クリック → コードの表示 → VBE画面のカーソルが点滅しているところに
↓のコードをコピー&ペースト → Excel画面に戻り、A列にデータを入力してみてください。

Private Sub Worksheet_Change(ByVal Target As Range) 'この行から//
If Intersect(Target, Range("A:A")) Is Nothing Or Target.Count > 1 Then Exit Sub
With Target
If .Value <> "" Then
If IsNumeric(.Value) Then
If .Value - Int(.Value) = 0 Then
If .Value Mod 2 = 0 Then
.Offset(, 1) = "偶数"
Else
.Offset(, 1) = "奇数"
End If
End If
End If
End If
End With
End Sub 'この行まで//

※ 本来であれば考えられるエラー処理が色々必要なのでしょうが
とりあえずはこの程度で。

※ この画面上ではコードは左詰めで表示されると思いますが、
こちらのVBE画面は↓のようにしています。
(IFがどこのEND IFまでなのか判りやすくするため)
「Excel VBAのコードを教えてくだ」の回答画像4
    • good
    • 0
この回答へのお礼

何度も回答ありがとうございました!解決できました!

ちなみにUNIXもわかりますか?
【logファイルを1つ上のディレクトリへD.logという名前でコピー】したいのですが、cdを使うのかcpを使うのか、mvを使うのか、全くわかりません!
よろしければ解説お願いします!
本当にすみませんm(__)m

お礼日時:2015/09/16 10:50

No.2です。



>()の中と""の間はそのままにして打って実行してよろしいんでしょうか?
>また、Subのとなりもこのままですか?

私がココで文章で説明するより、↓のURLなどが参考になるかもしれません。

http://www.officepro.jp/excelvba/basic/index1.html

実際はいちいち ( ) などは入力していません。

sub と入力 → スペース(半角) → 好みのプロシージャ名を入力 → Enter
これで Sub ・・・ と End Sub の間の行にカーソルが点滅しますので、
そこからコードを入力していきます。

※ 一気に!という訳にはいかないと思いますが、ネットで検索するといくらでもヒットしますので、
頑張ってみてください。m(_ _)m
    • good
    • 0
この回答へのお礼

ありがとうございます!理解出来ました!
またわからないところが出てきたので、よければ回答お願いします!

お礼日時:2015/09/14 11:49

こんにちは!


ごく単純に・・・

Sub Sample1()
Dim i As Long
Dim j As Long
For i = 1 To 9
For j = 1 To 9
Cells(i, j) = i & "×" & j & "=" & i * j
Next j
Next i
End Sub

こんな感じではどうでしょうか?m(_ _)m
    • good
    • 0
この回答へのお礼

回答ありがとうございます!
()の中と""の間はそのままにして打って実行してよろしいんでしょうか?
また、Subのとなりもこのままですか?
いまいちSubのとなりも理解してないのでよろしければ解説お願いしますm(__)m

お礼日時:2015/09/14 07:21

Sub セルの参照1()'


Dim rng As Range
For Each rng In Range("A1:I9")
rng.Formula = rng.Row & "×" & rng.Column & "=" & rng.Row * rng.Column
Next
End Sub
    • good
    • 1
この回答へのお礼

回答ありがとうございます!
このまま打って実行してよろしいんでしょうか?
それとも""←この間に計算式かセル番号を入れるのでしょうか?
よろしければ解説お願いしますm(__)m

お礼日時:2015/09/14 07:12

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