Spc関数

Spc関数は、VBA関数の中で制御・入出力関数に分類される関数です。

目次

スポンサー リンク

Spc関数とは

Spc関数は、Print # ステートメントまたは Print メソッドと共に使用し、指定した数のスペースを挿入するファイル入出力関数です。

構文Spc(n)
引数省略説明
number ×引数 n には、Spc(n) の次に指定したデータ数式、または文字列式に挿入するスペースの数を指定します。

引数 n に出力行の桁数未満の値を指定すると、次の出力位置は指定した数のスペースの直後になります。引数 n に出力行の桁数を超える値を指定すると、Spc 関数は次の出力位置を次の式で計算します。
currentprintposition + (n Mod width)
たとえば、現在の出力位置 (currentprintposition) を 24、出力行の桁数 (width) を 80、Spc(90) と指定すると、次の出力は 34 の位置 (現在の出力位置 + 90/80 の剰余) から始まります。現在の出力位置と出力行の桁数との差が n (または、n Mod width) 未満の場合、Spc 関数は次の行の先頭に進み、n - (width - currentprintposition) の式に従ってスペースの数を計算し、次の出力位置を決めます。
メモ 幅の広い文字を表示できるように、十分な桁数があることを確認してください。
Print メソッドでプロポーショナル フォントを使うとき、Spc 関数を使用して表示されるスペースの幅は、選択したフォントのポイント サイズが持つすべての文字の幅を平均したものになります。表示される文字数と、1 文字の占める固定幅の桁数は互いに無関係です。たとえばプロポーショナル フォントの場合、大文字の W は固定幅のフォントの 1 桁の幅よりも広く、小文字の i は 1 桁の幅よりも狭くなります。

Spc関数のサンプルコード

次の例は、Spc 関数を使って、出力ファイルとイミディエイト ウィンドウ内の出力位置を移動します。


Sub Sample

' Spc 関数は、Print # ステートメントの中で使うことができます。
Open "TESTFILE" For Output As #1            ' シーケンシャル出力モードで開きます。
Print #1, "ここから"; Spc(10); "ここまでの間に 10 個のスペースが挿入されます。"
Close #1                                ' ファイルを閉じます。

End Sub

次の例は、Spc 関数を使って、出力ファイルとイミディエイト ウィンドウ内の出力位置を移動します。


Sub Sample

Debug.Print Spc(30); "30 個のスペースです。"

End Sub

実行結果

解説

制御・入出力関数一覧

関数名内容
Choose数値で指定した式の値を返します。
IIf式の結果により2つの引数のうち1つを返します。
Inputファイルから指定した文字数の文字列を読みこんで返します。
InputBファイルから指定したバイト数のデータを読み込んで返します。
InputBoxダイアログボックスにメッセージを表示しテキストボックスに入力した値を返します。
MsgBoxダイアログボックスにメッセージを表示します。
Partition指定した数値の範囲が属する文字列を返します。
Spc指定した数のスペースを挿入します。
Switch条件式を評価し、真(True)の場合に式を返します。
TypeName変数に関する情報を返します。
ExcelのVBAについてのQ&A掲示板

↑ExcelのVBA全般について分からない事があればこちらの掲示板よりご質問ください^^

VBAのInternetExplorer操作入門

↑ExcelのVBAをマスターできたら、エクセルVBAのIE(InternetExplorer)操作にも挑戦してみてください^^

VBAのIE制御入門RSS

RSSフィードを登録すると最新記事を受け取ることができます。

VBAIE操作のスカイプレッスン

エクセルVBAのステートメント

こちらでは、エクセルVBAの事例で利用したステートメントをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

エクセルVBAのオブジェクト

こちらでは、エクセルVBAの事例で利用したオブジェクトをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

エクセルVBAのプロパティ

こちらでは、エクセルVBAの事例で利用したオブジェクトのプロパティをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

エクセルVBAのメソッド

こちらでは、エクセルVBAの事例で利用したオブジェクトのメソッドをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

エクセルVBAのイベント

こちらでは、エクセルVBAの事例で利用したオブジェクトのイベントをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。