指定位置に(文字・罫線)印刷する
                                                        玄関へお回り下さい。
指定位置に(文字・罫線)印刷する        (035)
      Option Explicit   'SampleNo=035 WindowsXP VB6.0(SP5) 2002.05.02

Private Sub
Locate(X As Long, Y As Long, myStr As String)
  With Printer
    .ScaleMode = vbCharacters  'キャラクターモードに設定
    .CurrentX = X        '水平座標の設定
    .CurrentY = Y        '垂直座標の設定
  End With
  Printer.Print myStr       '指定位置に文字列を印刷(表示)
End Sub


Private Sub Command1_Click()
  '印字ずれを防ぐために等幅文字を指定
  Printer.FontName = "MS 明朝"
  Printer.FontSize = 12

  Locate 0, 0, "0行目の0桁目から印字します。"
  Locate 10, 4, "4行目の10桁目から印字します。"
  Locate 5, 8, "8行目の5桁目から印字します。 "

  Locate 5, 11, Right$(Space$(14) & Format$("1234567.89", "#,###.00"), 14)
  Locate 5, 12, Right$(Space$(14) & Format$("1234.56", "#,###.00"), 14)

  Locate 22, 11, Right$(Space$(14) & Format$("1234567.89", "#,###.00"), 14)
  Locate 22, 12, Right$(Space$(14) & Format$("1234.56", "#,###.00"), 14)

  Locate 5, 14, "1234.56"
  Locate 5, 15, "1234.56"

  Printer.DrawStyle = vbDashDot    '線種を指定
  Printer.DrawWidth = 5        '線の太さを指定
  Printer.Line (5, 15)-(36, 15)    '中間にラインを印字

  Printer.EndDoc

End Sub


このようなプロシージャを作っておくと何行目の何桁目に印刷と設定が簡単です。
又、場合によってはフォントの種類やサイズも同時にプロシージャに設定しておくと、便利に
なるかと思います。
尚、印刷位置のずれを防止するには、下記の青色ポイントサイズとフォントを使用して下さい
参 考

  MS 明朝 及び MS ゴシック

   文字ポイント   半角幅    全角幅
      9      90    180
     10     105    195
     11     120    225
     12     120    240
     14     150    285
     16     165    315
     18     180    360
     20     210    405


    幅の単位=twip

注意 MS P明朝 及び MS Pゴシックは文字により幅が違います。




2002/05/02