1 / 18

情報基礎 A  第 12 週プログラミング

情報基礎 A  第 12 週プログラミング. VBA Programming. 徳山 豪・全 眞嬉 東北大学情報科学研究科 システム情報科学専攻 情報システム評価学分野. セル. セル番号: D2. VBA では Range(“D2”) 又は Cells(2,4). 2 次元配列. X(1,1). X(1,2). X(1,3). X(2,1). X(2,2). X(2,3). X(3,1). X(3,2). X(3,3). X(4,1). X(4,2). X(4,3). X(5,1). X(5,2). X(5,3). X(6,1).

nibal
Download Presentation

情報基礎 A  第 12 週プログラミング

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 情報基礎A 第12週プログラミング VBA Programming 徳山 豪・全 眞嬉 東北大学情報科学研究科 システム情報科学専攻 情報システム評価学分野

  2. セル セル番号:D2 VBAでは Range(“D2”) 又は Cells(2,4)

  3. 2次元配列 X(1,1) X(1,2) X(1,3) X(2,1) X(2,2) X(2,3) X(3,1) X(3,2) X(3,3) X(4,1) X(4,2) X(4,3) X(5,1) X(5,2) X(5,3) X(6,1) X(6,2) X(6,3) X(7,1) X(7,2) X(7,3) X(8,1) X(8,2) X(8,3) X(9,1) X(9,2) X(9,3) X(10,1) X(10,2) X(10,3) 配列名(行のインデックス, 列のインデックス) 10行 3列の 配列 配列の名前 X 箱の数(10×3=30個)

  4. セルの参照方法 • セルの参照方法 • Range • Cells • セルA1の値10に設定 • 以下はまったく同じ動作をする Sub Example_Range1() ActiveSheet.Range(“A1”).Value = 10 End Sub Sub Examlpe_Cells1() ActiveSheet.Cells(1, 1).Value = 10 End Sub

  5. Rangeプロパティ • 任意の1つのセル,又はセルの範囲を参照するプロパティ • 値の読み出し • 設定などを行う Range(“セル”) Sub Example_Range2() ‘セルに値を入れる ActiveSheet.Range(“A1”).Value = 15 Range(“A2”).Value = 5 Range(“B1:B10”).Value=10 End Sub

  6. Cellsプロパティ • 単体セルを参照する セルの行 セルの列 Cells(RowIndex,ColInex) Sub Example_Cells2() ‘セルに値を入れる ActiveSheet. Cells(1,5).Value = 25 Cells(2,5).Value = 5 End Sub

  7. Cellsプロパティ • セルF1~F10に値100を書き込むプログラム Sub Example_Cells3() ‘セルF1~F10に値100を入れる Dim kaisu As Integer For kaisu =1 to 10 Cells(kaisu, 6).Value = 100 Next kaisu End Sub

  8. セルA1とA2の合計 • Rangeを使ってセルA1とA2の合計をA3に出力 • Cellsを使ってセルA1とA2の合計をA4に出力 Sub Example_Range3() Range(“A3”) = Range(“A1”)+ Range(“A2”) End Sub Sub Example_Cells4() Cells(4,1) = Cells(1,1) + Cells(2,1) End Sub

  9. セルB1からB10までの合計 • Rangeを使ってB1からB10までの合計をC1に出力 Sub Example_Range4() Range(“C1”) = Range(“B1”)+ Range(“B2”) + Range(“B3”) + Range(“B4”) + Range(“B5”) + Range(“B6”) + Range(“B7”) + Range(“B8”) + Range(“B9”) + Range(“B10”) End Sub

  10. セルB1からB10までの合計 • Cellを使ってB1からB10までの合計をC2に出力 Sub Example_Cells5() Dim bango As Integer Dim goukei As Integer goukei=0 For bango = 1 to 10 goukei = goukei + Cells(bango, 2) Next bango Cells(2,3)=goukei End Sub

  11. アクティブセル Sub Example_Cells6() ActiveCell.Value = 200 ActiveCell.Previous.Value= ActiveCell.Value - 100 ActiveCell.Next.Value= ActiveCell.Value + 100 End Sub

  12. 合計をアクティブセルに表示 • B1からB10までの合計を選択したセルに表示させる Sub Example_Cells7() Dim bango2 As Integer Dim goukei2 As Integer goukei2=0 For bango2 = 1 to 10 goukei2 = goukei2 + Cells(bango2, 6) Next bango2 ActiveCell.Value=goukei2 End Sub

  13. 演習 • 以前Excelで作成した成績を「Sheet2」へコピーして下さい • 番号,国語,英語,数学の成績のみ

  14. 演習 • 国語の合計点と平均点を求めるプログラム • kokugo() • 英語の合計点と平均点を求めるプログラム • eigo() • 数学の合計点と平均点を求めるプログラム • sugaku() • 各科目の合計点と平均点を求めるプログラム • kamoku()

  15. 国語の合計,平均 Sub kokugo() Dim banngo3 As Integer Dim kokugo As Integer For bango3 = 2 To 11 kokugo = kokugo + Cells(bango3, 2) Next bango3 Cells(bango3, 2) = kokugo Cells(bango3 + 1, 2) = kokugo / 10 End Sub

  16. 英語の合計,平均 Sub eigo() Dim banngo3 As Integer Dim eigo As Integer Dim x As Integer x = 0 For bango3 = 2 To 11 eigo = eigo + Cells(bango3, 3) x = x + 1 Next bango3 Cells(bango3, 3) = eigo Cells(bango3 + 1, 3) = eigo / x End Sub

  17. 数学の平均,合計 Sub sugaku() Dim banngo3 As Integer Dim sugaku As Integer Dim x As Integer x = 0 For bango3 = 2 To 11 sugaku = sugaku + Cells(bango3, 4) x = x + 1 Next bango3 Cells(bango3, 4) = sugaku Cells(bango3 + 1, 4) = sugaku / x End Sub

  18. 3科目(国語,英語,数学)の合計,平均 For bango3 = 2 To 11 kokugo = kokugo + Cells(bango3, 2) eigo = eigo + Cells(bango3, 3) sugaku = sugaku + Cells(bango3, 4) x = x + 1 Next bango3 Cells(bango3, 2) = kokugo Cells(bango3 + 1, 2) = kokugo / x Cells(bango3, 3) = eigo Cells(bango3 + 1, 3) = eigo / x Cells(bango3, 4) = sugaku Cells(bango3 + 1, 4) = sugaku / x End Sub Sub kamoku() Dim bango3 As Integer Dim kokugo As Integer Dim eigo As Integer Dim sugaku As Integer Dim x As Integer kokugo = 0 sigo = 0 sugakua = 0 x = 0

More Related