なずなず VBA教習所~初級:コメントを付けてみよう~

2時間ほど書いた講座がなぜか保存できてなくて消えました!!
悲しみから立ち直れないでいます←

そんなわけで、本当に思いつくままに初心者~初級者手前の
コードをざらざらっと書いてみました。

ぱっとわかるならすぐ飛ばす。
わかんないかったら1行ずつ何の処理をしてるか
コメントをつけてみましょーー!!

解説や概要もいっさいなしです。
めんどくさかったからじゃないですからっ


その1

Sub その1()
   Dim str As String
   Dim sh As Worksheet
   
   Set sh = ThisWorkbook.Worksheets("Sheet1")
   
   str = "Hello World"
   
   
   sh.Range("A1").Value = str
   sh.Range("A2").Value = Format(Now(), "mm/dd")
   
End Sub


その2

  Dim sh As Worksheet
   
   Set sh = ThisWorkbook.Worksheets("Sheet1")
   
   Dim rng As Range
   Dim r As Range
   
   Set rng = sh.Range("A1:b2")
   
   'rng.Interior.ColorIndex = 0
   
   For Each r In rng
       If r.Value = "" Then
           r.Interior.Color = vbRed
       End If
   Next

その3

Sub その3()
   Dim sh As Worksheet
   
   Set sh = ThisWorkbook.Worksheets("Sheet1")
   
   Dim i As Long
   Dim k As Long
   
   
   sh.Range(sh.Cells(1, 1), sh.Cells(9, 9)).Clear
   
   For i = 1 To 9
       For k = 1 To 9
           sh.Cells(i, k).Value = i * k
       Next
   Next
End Sub


その4

Sub その4()
   Dim sh As Worksheet
   
   Set sh = ThisWorkbook.Worksheets("Sheet1")
   
   If sh.Cells(1, 1).Value <> "" Then
       sh.Rows(1).Insert
   End If
   
   Dim x As Long
   
   For x = 1 To 9
       sh.Cells(2, x).Value = x & "の段"
   
   Next
End Sub


その5

  Dim sh As Worksheet
   
   Set sh = ThisWorkbook.Worksheets("Sheet1")

   Dim i As Long
   Dim k As Long
   
   i = 3
  
   Do While sh.Cells(i, 3) <> ""
       k = 1
   
       Do While sh.Cells(i, k) <> ""
           If sh.Cells(i, k).Value Mod 5 = 0 Then
               sh.Cells(i, k).Interior.Color = vbBlue
           End If
           
           k = k + 1
       Loop
       
       i = i + 1
   Loop


その6

Sub その6()
   Dim sh As Worksheet
   
   Set sh = ThisWorkbook.Worksheets(1)
   
   sh.Range("A1:AA2000").Interior.ColorIndex = 0
  
End Sub


その7

  Dim sh As Worksheet
   
   Set sh = ThisWorkbook.Worksheets("Sheet1")
   
   Dim tmp()
   
   ReDim tmp(10)
   
   Dim i
   
   For i = 1 To UBound(tmp)
       tmp(i - 1) = sh.Cells(i + 1, "F")
   
   Next
   
   Debug.Print Join(tmp, vbCrLf)


その8

Sub その8()
   Dim sh As Worksheet
   
   Set sh = ThisWorkbook.Worksheets("Sheet1")
   
'    Dim col As Collection
'
'    Set col = New Collection
'
   Dim col As New Collection
   
   col.Add "開いているブック数:" & Workbooks.Count
   col.Add "シート数:" & Worksheets.Count
   col.Add "マクロのブックの名前:" & ThisWorkbook.Name
   col.Add "ブックのパス" & ThisWorkbook.Path
   
   Dim c
   
   For Each c In col
       Debug.Print c
   Next
   
End Sub












この記事が気に入ったらサポートをしてみませんか?