2008年08月16日

Zoho Sheetマクロ機能の「ワークシート操作」について


Zoho Sheetマクロ機能の「ワークシートの操作」には、追加・削除・移動・コピーなどの基本的な操作がありますが、いずれも実行できます。具体的には、

  1. ワークシートの追加
    WorkSheetsコレクション.Add(Before:=ワークシート,After:=ワークシート,Count:=追加数)

  2. ワークシートの削除
    WorkSheetオブジェクト.Delete

  3. ワークシートの移動
    オブジェクト.Move(Before:=ワークシート,After:=ワークシート)
    ここでオブジェクトは、WorkSheetsコレクション、Sheetsコレクション、またはWorkSheetオブジェクト。

  4. ワークシートのコピー
    オブジェクト.Copy(Before:=ワークシート,After:=ワークシート)
    ここでオブジェクトは、WorkSheetsコレクション、Sheetsコレクション、またはWorkSheetオブジェクト。
よくワークシートの削除で、ダイアログボックスによる確認が行われますが、現状はMsgBoxが表示のみの為にできません。
Application.DisplayAlerts = True/False
も無視されますので、アップロードしたMS-Excelマクロとの互換上は問題ありません(というか、操作上の影響は小さい)。



ワークシートの参照として、
  • WorkSheets(インデックス).Select
  • WorkSheets(インデックス).Select Replace:=True/False
  • ActiveSheet
などが使えます。「WorkSheets(インデックス).Select」と「WorkSheets(インデックス).Select Replace:=False」を組合せて複数のシートを選択し、
  • WorkSheetオブジェクト.Activate
で特定のワークシートをアクティブにできます。



しかし、MS-Excelでは可能な複数のシートを一度に選択する事は現状できません。例:
WorkSheets(Array(1,2)).Select

選択している複数のシートに対して、削除やコピーなどの処理をする時にMS-Excelで使う、
SelectedSheets
も現状は利用できません。

いずれも個々のワークシートに操作する必要があります。




ワークシート名の変更やワークシートの枚数カウントはできます。
・WorkSheetオブジェクト.name=設定値
・WorkSheetsコレクション.Count


しかし、シート見出しの色変更はできません。(現状、Tabが未サポート)



「制御構造」の一つである「For Each オブジェクト変数 IN コレクション」は、WorkSheetsコレクションにも使えますので、同じワークシート名があるかを確認するのに便利です。
例:
Sub CheckSameName()
    Dim CheckSheet As Worksheet
    For Each CheckSheet In Worksheets
        If CheckSheet.Name = "太郎" Then
            MsgBox "「太郎」と同名シートがあります"
            Exit Sub
        End If
    Next
End Sub



尚、WorkBooksにおけるOpenメソッドなどが現状で未サポートであり、別ブックに対するシートの移動・コピーなどの操作はできません。



注意:上記は2008年8月16日時点で、簡単な構文により確認した範囲で記述しています。
尚、できていない事を強調してZoho Sheetマクロ機能を否定する意味ではない事をご理解ください。



posted by 鎌倉太郎 at 17:08| ☁| Comment(0) | TrackBack(0) | 体験利用-Zoho Sheetマクロ | 更新情報をチェックする
この記事へのコメント
コメントを書く
コチラをクリックしてください

この記事へのトラックバック