Excel マクロ/VBAの講義4日目。 今日も昨日に引き続き講義の合間に、MOS Excel Expert(第2回模擬試験)。
【講義内容】
- Chapter4 変数と制御構文
【ワンポイント】
IF~Then~ElseIf~Else~End If
Sub shiken3() Worksheets("If~Then").Select tensuu = Range("C24").Value If tensuu >= 80 Then MsgBox (Range("k23").Value) ElseIf tensuu >= 60 Then MsgBox (Range("k24").Value) Else MsgBox (Range("k25").Value) End If End Sub
Select Case~Case Else~End Select
Sub syozoku() Worksheets("Select~Case").Select syozokuCode = Range("C8").Value Select Case syozokuCode Case 100 MsgBox (Range("K7").Value) Case 200 MsgBox (Range("K8").Value) Case Else MsgBox ("部署コードを確認して下さい。") End Select End Sub
連続値の条件
Sub point() Worksheets("Select~Case").Select p = Range("C17").Value Select Case p Case Is >= 1000 MsgBox (Range("K16").Value) Case 800 To 999 MsgBox (Range("K17").Value) Case 300 To 799 MsgBox (Range("K18").Value) Case Else MsgBox ("がんばってポイントを貯めてね。") End Select End Sub
複数値での条件
Sub kubun() Worksheets("Select~Case").Select code = Range("C25").Value Select Case code Case 100, 110, 120 MsgBox (Range("K24").Value) Case 201, 211, 221 MsgBox (Range("K25").Value) Case 300, 305, 310 MsgBox (Range("K26").Value) Case Else MsgBox ("コードを確認して下さい。") End Select End Sub
For~Next
For i = 1 To 10 Step 2 MsgBox(i) Next i
Output
1, 3, 5, 7, 9
Sub getSheetsName() For i = 1 To Worksheets.Count sheetName = Sheets(i).Name MsgBox ("シート" & i & "の名前は、" & Chr(10) & _ sheetName & Chr(10) & " です。") Next End sub
Do~Loop
Do While~Loop
Sub loop1() Worksheets("Do~Loop").Select Range("C7").Select Do While ActiveCell.Value <> "" MsgBox (ActiveCell.Value) ActiveCell.Offset(0, 1).Select Loop End Sub
Do~Loop While
Sub loop2() Worksheets("Do~Loop").Select Range("C14").Select Do MsgBox (ActiveCell.Value) ActiveCell.Offset(0, 1).Select Loop While ActiveCell.Value <> "" End Sub
Do Until~Loop
Sub loop3() Worksheets("Do~Loop").Select Range("C22").Select Do Until ActiveCell.Value = "" kamoku = ActiveCell.Value ActiveCell.Offset(1, 0).Select tensuu = ActiveCell.Value MsgBox (kamoku & "は、" & tensuu & "点です。") ActiveCell.Offset(-1, 1).Select Loop End Sub
Do~Loop Until
Sub loop4() Worksheets("Do~Loop").Select Range("C29").Select Do ActiveCell.Font.Bold = True ActiveCell.Font.Italic = True ActiveCell.Offset(0, 1).Select Loop Until ActiveCell.Value = "" End Sub
【今日の積み上げ】
・Excel マクロ基本操作