今日のテーマは色々な入力です電球
 
セルに入力するものとしては、
① 文字
② 日付
③ 数字
④ 数式
があります。
 
 
 
早速、Subプロシージャに登場してきた文を入れて、それぞれ試してみましょう。
 
Subプロシージャは、皆さんももう何度か使ってるこの子のことです。↓
   Sub 入力()
     ~
   End Sub
 
 
 
① 文字
文字列として扱うものは“”(ダブルクォーテーション)で囲みます。
 
   Cells(1,1)=”プリン”
 
文字同士をくっつけるときはこんな風に書きます。
   
   Cells(2,1)="プ” & “リン”
   Cells(2,2)="プ” + “リン”
 
または、
 
   Cells(3,1)="プ"
   Cells(3,2)="リン”
   Cells(3,3)=Cells(3,1) & Cells(3,2)
 
こんな感じにもできます。
 
 
 
② 日付
日付も“”で囲みます。
入力の仕方によって、 表示形式も変わりますので色々試してみてください。
 
   Cells(1,3)="2022/6/22"
   Cells(2,3)="6月22日”
 
 
 
③ 数字
では、数字はどうでしょう?
四則演算してみましょう。
 
   Cells(4,1)=5
   Cells(5,1)=5+2 ’足し算
   Cells(6,1)=10-1 ’引き算
   Cells(7,1)=3*4 ’掛け算
   Cells(8,1)=10/2 ’割り算
 
 
次に、文字列として数字を扱うときはどうすればよいでしょうか?
 
   Cells(9,1)="5"+"2"
 
Cells(5,1) も5と2を足してますが、 今回は“”で囲んで文字列として扱っているので違う結果「52」になりました。
 
 
 
④ 数式
最後に、 色々な数式を入力してみましょう。
数式も””で囲みます。
 
   Cells(10,1)= "=5+2"
   Cells(11,1)= "=A4+A5"
   Cells(12,1)= "=sum(A6:A8)”
 
数式の中で記号として“” を使いたい時は
 
   Cells(13,1)= "=countif(A1:A12,""プリン"")"
 
というように二重にします。
 
 
 
 
ちなみに、ワークシート関数も使えます。
 
   Cells(14,1)=WorksheetFunction.Countif(Range("A1:A12"), "プリン")
 
ワークシート関数でも、中にはVBAで使えないものもありますので、 調べて使ってみましょう。
 
この機能も便利ですが、 セルには結果の数値だけが残るので、 他の方とエクセルを共有する際には数式が残るようにした方が親切かもしれません。
 
 
::::::::::::::::::::::::::::::::::::::
 
例題
 
B列の計算方法で、C~E列を計算した結果をF列に入力してみましょう。
 
結果の値だけを入力するのでもいいですし、数式を入力するのもありです。
 
また、結果の値だけを入力する場合、コードにセルの値そのものを使うのか、セルの場所を使うのかでも書き方が違ってきます。
 
 
::::::::::::::::::::::::::::::::::::::
 
 
回答例 (Sub~End Subは省略)
 
Range("F2") = "東" & "京" & "都"
Cells(2,6) = Cells(2,3) & Cells(2,4) & Cells(2,5)
Cells(2,6) = ”=C2&D2&E2”
 
 
Range("F3") = 3 + 4 + 5
Cells(3,6) = Cells(3,3) + Cells(3,4) + Cells(3,5)
Cells(3,6) = "=C3+D3+E3"
 
 
Range("F4") = 10 * 3 * 6
Range("F4") = Range("C4") * Range("D4") * Range("E4")
Cells(4,6) = "=C4*D4*E4"
 
 
Cells(5,6) = WorksheetFunction.Sum(Range(Cells(5,3),Cells(5,5)))
Range("F5") = "=sum(C5:E5)"
 
 
Range("F6") = WorksheetFunction.Average(Range("C6:E6"))
Cells(6,6) = "=average(C6:E6)"
 
 
::::::::::::::::::::::::::::::::::::::
  
いつも仕事後労わってくれるプリン君ですプリン
本題に入る前に、構文の復習をしましょう電球
どんな形だったか覚えていますか?
 
 
Sub ○○()
  オブジェクト.メソッド
  オブジェクト.プロパティ=値
End Sub
 
でしたね!!
今回はメソッドに選択「Select」を使いましょう。
ですので、Subプロシージャ名「○○」は「セルの選択」にしましょうか。
 
 
それでは本題に行きましょう上差しキラキラ
これから出てくるオブジェクトの後ろに 「.select」 をつけて色々試してみてくださいね。
 
 
①セルを指定する際にはCellsかRangeを使用します。
 
Cellsはシンプルに
 
   Cells(行番号,列番号)
 
   例:Cells(10,2).Select
     ↑B10のことです。
 
です。 単一のセルを指定する時に使います。
 
1つずつ縦方向、 横方向にセルを見ていくときには、行番号や列番号を1ずつ大きくしていけばいいので、 とても便利です。
詳しくはFor Next構文の回で練習します。
 
 
Range単一のセルを選択する時にも、範囲を選択する時にも使えます。
 
単一のセル  Range (“B10")
 
範囲     Range("A1:D4")
           Range(Cells(1,1), Cells(4,4))
 
 
行を指定する時にはRowsRangeを使用します。
 
Range ("2:3")
Rows(2)
Rows (“2:3")
 
 
列を指定する時にはColumnsRangeを使用します。
 
Range (“A:B")
Columns(1)
Columns (“A:B") 
 
 
 
上記の例以外にも指定の仕方は多数ありますので、その時に応じて最適なものを選びましょう。
 
 
 
ちなみに、入力していて気付いた方もいるかと思いますが、
アルファベットを小文字で入力しても、 改行のタイミングで頭文字が自動的に大文字に変換してくれます。
 
逆に、 変換されるはずのところが小文字のままのときは、 綴りが間違っているかもしれません。
確認してみてください。
 
::::::::::::::::::::::::::::::::::::::
 
 
例題①
 
例題②
 
例題③
 
例題④
 
例題⑤
 
選択されたセルはどのように表現できるでしょうか?
一つに限らず色々試してみてくださいね花
 

::::::::::::::::::::::::::::::::::::::

 

回答例①

 

Cells(3, 6).Select
Range("F3").Select

 

 

 

回答例②

 

Range("B3:E7").Select
Range(Cells(3, 2), Cells(7, 5)).Select

 

 

 

回答例③

 

Rows(6).Select
Range("6:6").Select
Rows("6:6").Select

 

 

 

回答例④

 

Columns("C:E").Select
Range("C:E").Select

 

 

 

回答例⑤

 

Range("B:B,D:D,F:F").Select

 

::::::::::::::::::::::::::::::::::::::

 

お疲れ様でした爆  笑

思った通りの場所を選択できるようになりましたか?

 

次回は事務作業でよく使いそうなメソッド(動作)についてです。

簡単なマクロを使ってみたところで、 今後どういった知識が必要になるか考えてみましょう電球
 
エクセルを使ったたいていの事務作業は以下の2つの要素からできているかと思います。
 
① 2つのデータを比較
② データ加工 (いらない列を削除、 入力、 コピペ、フォントを変える、 罫線など)
 
 
① の作業をさらに掘り下げてみると、
1. ブックやシート、セルを指定
  →Workbook、 Worksheet
  →Range、Cells、Rows、Columns
 
2.縦方向や横方向、 あるいは両方向へ順番にセルを見ていく
  →For Next構文
 
3. セルがとある条件をみたしているか等を判断する
  →If構文、 Select Case構文
 
② ①で条件を満たしているセルに対して操作
  →Delete, Copy, PasteSpecial. Replaceなど
 
といった感じになります。
 
いかがですか?
少しイメージが湧いてきたでしょうか?
 

 
これから上記の大まかに4つの項目について勉強していきます鉛筆
 
特に①の必要な情報が入っているセルを特定することに重点を置いていきます。
 

個人的にはこれが結構難しいですアセアセ

何通りも書き方があるので、私が知らないもっといい書き方がまだまだあるんじゃないかと思ったり。。。
 
みなさんも勉強部屋の回答と違うからといって、必ずしも間違っているとは限りませんからね。

思った通りの結果が得られればそれでOKです乙女のトキメキ
 

ただ、たくさんのデータを扱うと必ず例外というものが出てきます。

細かく条件を設定したつもりでも、それをすり抜けて余計なデータを拾ってしまったりするので。
 
運用する前にたくさんテストしましょう!!
 

②についてはよく使いそうなものだけピックアップする予定です。