たびたびお世話になってます。

VB4で開発したパッケージソフトの
WindowsXP対応をしています。

WindowsNT、Windows2000、WindowsXPにおいて
専用紙(210ミリ×330ミリ)の印刷がうまくいかなくて
困っています。

サーバーのプロパティでユーザー定義の用紙を追加して
プログラムで用紙をユーザー定義にしても
ぜんぜん反映されません。
反映されたとしてもA3になって結局結果はA4と一緒。。。

リリースが近いので本当に困っています。
わかる方、どうかご教授ください。
お願いします。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

256では駄目ですよ。

別の値を設定すればうまく行くはずです。
詳しくは参考URLにて

この回答への補足

参考URLを使ってAPI関数を組み合わせたら
できました、ありがとうございます!!

補足日時:2002/02/17 18:34
    • good
    • 0

> プログラムで用紙をユーザー定義にしても



Printer.PaperSize = 256 ですか?

参考URL:http://oshiete1.goo.ne.jp/kotaeru.php3?q=153373

この回答への補足

Printer.PaperSize = 256です。
なぜかWindows2000SR1に変えると現象が変わります。
Windows2000SR1もWindowsXPもそうでしたが、
どうもユーザー定義で定義したサイズではなく
定義したサイズで規格用紙に一番近い用紙に設定されるようです。

もうお手上げ状態です。

補足日時:2002/02/11 15:24
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

Qエクセルでのユーザー定義用紙設定の方法

エクセル(95)で、ユーザー定義用紙(サイズの設定)を、その都度行いたいのですが、どのようなコーディングにすればよろしいですか?
例えば、幅120mm 長さ260mmの用紙を縦で印刷したい場合は、どのようになりますか?
ご存知の方、教えてください。

Aベストアンサー

マクロを記録

参考URL:http://oshiete1.goo.ne.jp/kotaeru.php3?q=580552

Q規定の用紙に印刷するとき、ミリ単位で位置をきっちり決めたい。。。

印刷する用紙が決まっていて、
左から何ミリ,上から何ミリのところにAのデータを印刷…
右から何センチ,下から何ミリのところにBのデータを印刷…
そんな感じに設定するには、どうすれば良いのですか?

Aベストアンサー

VisualBasicのカテゴリなんでVBのアプリを作るときの話ですよね?

クリスタルレポート等のレポート作成環境を使うのがいちばん簡単でしょうね。
VB6には別の名前のやはり似たような環境がついてくると思いますので、それを使ってみてください。
また、印刷関係のOCXなども提供されていると思いますので、それらを使うこともできますね。

いずれにしてもプリンタ自体にも誤差があるため、あまりシビアなものは難しいと思います。

Qユーザー定義関数の作成

1)
基準年の値をP0,t年後の値をPtとした場合の年あたりの伸び率rは、
              1/t
     r = (Pt/P0)  - 1 

で計算されます。
これを計算するユーザー定義関数のVBAを教えてください。

2)
1からnまでの逆数の和

 1+1/2+1/3+・・・+1/n=Σ1/i

を計算するユーザー定義関数のVBAを教えてください。

Aベストアンサー

Public Function 伸び率r(P0 As Double, Pt As Double, t As Integer) As Double
伸び率r = (Pt / P0) ^ (1 / t) - 1
End Function

Public Function 逆数和(n As Integer) As Double
Dim i
Dim sum As Double
sum = 0#
For i = 1 To n
sum = sum + 1 / i
Next
逆数和 = sum
End Function

Qエクセルユーザー定義関数(1)

エクセル初心者です。
複数のセル範囲(例えばRange("A1:A100"))を入力させ、入力されたセル範囲すべてのセルを3乗した総和を求めるユーザー定義関数は作ること可能でしょうか?

Function Y(a As Range) As Variant

ここに、aで選択されたセル全てを3乗して総和を求める関数Yを定義したい。

End Function

よろしくお願い致します。

Aベストアンサー

こんばんは。
こんなのとか。

Function y(a As Range) As Variant
Dim r As Range
Dim result As Variant
For Each r In a
result = result + r.Value ^ 3
Next
y = result
End Function

QAccessVBAでユーザー定義関数使用

エクセルVBAで、以下のユーザー定義関数(選択したセルaを全て3乗した和を求める)を使用していますが、アクセスVBAで同様の関数を使用するにはどうしたらよいでしょうか?

★アクセスVBVで実行したいプログラム
実行すると"データテーブル"の"Aフィールド"を全て3乗した和をmsgboxで表示

★エクセルで使用していたユーザー定義関数
’--------------------------------------
Function y(a As Range) As Variant
Dim r As Range
Dim result As Variant
For Each r In a
result = result + r.Value ^ 3
Next
y = result
End Function
’--------------------------------------
ぞうぞよろしくお願い致します。

Aベストアンサー

VBA となると、書き方は人それぞれです。
私は、DBCount関数を利用しています。

--------------------------------------------------------------------

MsgBox DBCount("SELECT Sum([A]^3) AS こたえ FROM データテーブル;")

? DBCount("SELECT SUM(ID) FROM インポート記録")
243856
? DBCount("SELECT SUM(ID^3) FROM インポート記録")
14161272936256

--------------------------------------------------------------------

Public Function DBCount(ByVal strQuerySQL As String) As Variant
On Error GoTo Err_DBCount
   Dim N
   Dim rst As ADODB.Recordset

   Set rst = New ADODB.Recordset
   With rst
     .Open strQuerySQL, _
        CurrentProject.Connection, _
        adOpenStatic, _
        adLockReadOnly
     If Not .BOF Then
       .MoveFirst ' <-- 省略可!
       N = Nz(.Fields(0), 0)
     End If
   End With
Exit_DBCount:
On Error Resume Next
   rst.Close
   Set rst = Nothing
   DBCount = N
   Exit Function
Err_DBCount:
   MsgBox "SELECT 文の実行時にエラーが発生しました。(DBCount)" & Chr$(13) & Chr$(13) & _
      "・Err.Description=" & Err.Description & Chr$(13) & _
      "・SQL Text=" & strQuerySQL, _
      vbExclamation, " 関数エラーメッセージ"
   Resume Exit_DBCount
End Function

VBA となると、書き方は人それぞれです。
私は、DBCount関数を利用しています。

--------------------------------------------------------------------

MsgBox DBCount("SELECT Sum([A]^3) AS こたえ FROM データテーブル;")

? DBCount("SELECT SUM(ID) FROM インポート記録")
243856
? DBCount("SELECT SUM(ID^3) FROM インポート記録")
14161272936256

--------------------------------------------------------------------

Public Function DBCount(ByVal strQuerySQL As String) ...続きを読む


このカテゴリの人気Q&Aランキング

おすすめ情報