Top> 部品(セル)

VBA通信教材申込み

VBA課題解決型実践塾セミナー内容

申込 ヤフーショッピング

部品(セル)

配列を使ったコピー(表のコピー)

Sub hairetu()
  Dim mydata(3, 2) As String
  Dim i As Long
  Dim j As Long
  For i = 0 To 3
    For j = 0 To 2
      mydata(i, j) = Cells(i + 1, j + 1)
    Next
  Next
  For i = 0 To 3
    For j = 0 To 2
      Cells(i + 10, j + 1) = mydata(i, j)
    Next
  Next
End Sub

アクティブセルにデータを保存

Private Sub CommandButton1_Click()
  Dim kcode As String
  kcode = Left(kamoku.Text, 3)
  ActiveCell = kcode
End Sub

範囲のコピー

  Range("A2:F6").Select
  Selection.Copy
  sheets("元帳").Select
  Range("A3").Select
  ActiveSheet.Paste

範囲のクリア

Rangeを使う場合
  Worksheets("売掛金").Range("A4:H100").Clear
Cells を使う場合
  Worksheets("売掛金").Activate
  Worksheets("売掛金").Range(Cells(4, 1), Cells(100, 8)).Clear
For Nextを使う場合はデータベースの元帳クリアを参考にしてください

配列の数が変更するRedimを使った2次元の例

ReDim datah(hairetu, 5)
For i = 5 To lastrow
  datah(i - 5, 0) = Worksheets("元帳").Cells(i, 2)
  datah(i - 5, 1) = Worksheets("元帳").Cells(i, 4)
  datah(i - 5, 2) = Worksheets("元帳").Cells(i, 6)
  datah(i - 5, 3) = Worksheets("元帳").Cells(i, 17)
  datah(i - 5, 4) = Worksheets("元帳").Cells(i, 22)
  datah(i - 5, 5) = Worksheets("元帳").Cells(i, 27)
Next

セルの結合

  Dim i As Long
  Dim j As Long
  Dim k As Long
  i = 0
    For i = 0 To 35
      For j = 0 To 27
        For k = 0 To 15
          Range(Cells(34 + j + 31 * i, 7 + k * 40), Cells(34 + j + 31 * i, 13 + k * 40)).Select
          Selection.Merge
        Next
      Next
    Next

Range座標値のCells変換

  Dim r As Long
  Dim c As Long
  Dim za As String
  za = InputBox("座標値を入力してください")
  Range(za).Select
  r = Selection.Row
  c = Selection.Column
  Range("b1") = Cells(r, c)
  MsgBox "cells(" & r & "," & c & ")"

セルの選択(変更)行(Row)列(Column)指定

  Private Sub Worksheet_SelectionChange(ByVal Target As Range)
     If Target.Row = 3 And Target.Column = 4 Then
      MsgBox "セルが移動しました"
    End If
  End Sub

セルの内容変更行(Row)列(Column)指定

  Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Row = 3 And Target.Column = 4 Then
      MsgBox "セルの内容が変わりました"
    End If
  End Sub

セルの移動(ハイパーリンク)

  Range("A3").Select
  ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="", SubAddress:= _
   "test!H3"

セルの色付け

  ActiveCell.Interior.ColorIndex = 1
  Cells(1, 1).Interior.ColorIndex = 0
  Cells(2, 1).Interior.ColorIndex = 56
  Cells(3, 1).Interior.Color = &HFF
  Cells(4, 1).Interior.Color = &HFF0000
  Cells(5, 1).Interior.Color = &HCC9966
  Cells(6, 1).Interior.Color = RGB(255, 255, 0)

セルのフォントの種類とサイズ

  Cells(2, 3).Font.Size = 20
  Cells(2, 3).Font.Name = "MS Pゴシック"
  Cells(2, 3).Font.Color = -16776961

範囲選択の上の行番号

  Selection(1).Row

範囲選択の右の列番号

  Selection(Selection.Count).Column

選択範囲の色付け

  Dim i As Long
  For i = Selection(1).Column To Selection(Selection.Count).Column
    Cells(Selection(1).Row, i).Interior.ColorIndex = 5

  Next i

書式の変更西暦年月日

  Selection.NumberFormatLocal = "yyyy/m/d"

5列目を和暦に変更

  Columns(5).Select
  Selection.NumberFormatLocal = "ggge年m月d日"

アクティブセルの座標値

  Sub zahyouti()
    Dim gyou As Long
    Dim retu As Long
    retu = ActiveCell.Column
    gyou = ActiveCell.Row
' アクティブセルから右(列)へ3つ下(行)へ2つの座標値
    MsgBox "行=" & gyou + 3 & " 列=" & retu + 3
  End Sub

別のブックからのデータを指定したシート(開いている)のセルへコピー

  Workbooks("練習.xlsm").Worksheets("コード表").Range("B3:B12").Copy Destination:=Range("A3")

曜日書式の作成

  Worksheets("作業").Select
  lastrow = Worksheets("作業").Cells(Rows.Count, 1).End(xlUp).Row
  Range("A2:A" & lastrow).Select
  Selection.NumberFormatLocal = "aaaa"

書式でなく曜日を直接コピーする場合

  Worksheets("作業").Cells(i, 1) = WeekdayName(Weekday(Worksheets("data").Cells(i, 1)))

BOXの罫線を引く(A1形式)

Sub 罫線BOXA1()
  Range("A5:D5").Borders.LineStyle = xlContinuous
  End Sub

BOXの罫線を引く(CELLs形式)

Sub 罫線BOXCELL()
  Range(Cells(7, 1), Cells(7, 4)).Borders.LineStyle = xlContinuous
End Sub

下線の罫線を引く(A1形式)

Sub 罫線下線A1()
  Range("A9:D9").Borders(xlEdgeBottom).LineStyle = xlContinuous
End Sub

下線の罫線を引く(CELLs形式)

Sub 罫線下線CELL()
  Range(Cells(11, 1), Cells(11, 4)).Borders(xlEdgeBottom).LineStyle = xlContinuous
End Sub

下線の太い赤い罫線を引く(CELLs形式)

Sub 罫線下線CELL大red()
  With Range(Cells(13, 1), Cells(13, 4))
    .Borders(xlEdgeBottom).ColorIndex = 3
    .Borders(xlEdgeBottom).Weight = xlThick
  End With
End Sub

罫線を削除する

Sub 罫線削除()
  Cells.Select
  Selection.Borders.LineStyle = False
  Cells(1, 1).Select
End Sub

塾長あいさつ
基本方針(考え方)
通信教育内容
課題解決セミナー内容
初心者基礎コース内容
カリキュラム・料金
案内地図・各種リンク
問合せ・申込み
アベノ塾
システムの内製化
アサイコンピュータACS
応用部品集(有料)
販売管理(事例)
財務管理(事例)
顧客管理(事例)
見積もり(事例)
給与(事例)
介護(事例)
ゴースト暗算(事例)
部品集(部品の基礎)
部品集(シート関連)
部品集(データベース)
部品集(セル関連)
部品集(関数)
部品集(フォーム関連)
部品集(ブック関連)
部品集(その他)
変数の勉強
繰り返しと条件文
マスター登録.訂正.削除
フォルダー内のファイル
項目をシート名で作成
ブックの操作
CSVファイルの取り込み
呼び出し元・先
商品マスター検索
エクセル関数をVBAで
エクセル関数を使う
よくつかうプログラム
販売管理(ソース)
財務管理(ソース)
給与管理(概要・画面)
見積もり(概要・画面)
工程管理(概要・画面)
原価管理(概要・画面)