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 | 変数に関する情報を返します。 |