advanced help
per page, with , order by , clip by
Results of 1 - 1 of about 37686 for IF (0.007 sec.)
[[20050428215554]]
#score: 1591
@digest: cd230b299ee73e2d45197053ac0dd31f
@id: 13745
@mdate: 2005-05-05T06:31:29Z
@size: 4814
@type: text/plain
#keywords: conf (49125), myno (20286), ⌒)?", (15630), 理b2 (15368), 理b1 (13911), myname (13125), vbokcancel (12858), 刷") (11443), vbcancel (8771), vbok (8325), なv (7380), 認") (6301), 理a (4893), 述法 (4125), 刷_ (3694), 述内 (3540), printout (3383), のel (3169), instr (3008), printpreview (2961), elseif (2839), す!" (2354), instrrev (2275), 印刷 (2163), ・確 (1969), 近所 (1564), 頭を (1526), ws (1470), 所pg (1378), を揃 (1226), 揃え (1219), then (1218)
『マクロで印刷』(ぷ〜)
応用ができないんです・・・ Private Sub 印刷_Click() Dim ws As Worksheet Dim MyName As String, myNo As String Dim i As Long MyName = ActiveSheet.Name i = InStrRev(MyName, "!") conf = MsgBox("印刷する(〃⌒o⌒)?", vbOKCancel, "印刷") If conf = vbOK Then conf = MsgBox("確認する(*^▽^*)o♪ ", vbOKCancel, "確認") If conf = vbCancel Then conf = MsgBox("印刷します!", vbOKCancel, "確認") If conf = vbOK Then myNo = Mid(MyName, i) If InStr(ws.Name, myNo) > 0 Then ws.PrintOut ElseIf conf = vbOK Then myNo = Mid(MyName, i) For Each ws In Worksheets If InStr(ws.Name, myNo) > 0 Then ws.PrintPreview End If Next ws conf = MsgBox("いいかなv(=∩_∩=)v", vbOKCancel, "印刷") If conf = vbOK Then myNo = Mid(MyName, i) For Each ws In Worksheets If InStr(ws.Name, myNo) > 0 Then ws.PrintOut ElseIf conf = vbCancel Then End If Next ws 上記の様なマクロを作成して見ましたが上手くいきません! 印刷する?でOKなら確認する?と表示されてCancelを選択したら, そのまま印刷する所までは,上手くいくのですが・・・ 確認をするでOKを選択したら,印刷プレビューが表示されて,いいかなとMsgが 表示され、印刷としたいのですが,どうしたら良いですか???? ---- 頭をそろえると、何処と何処が対応しているのかが分かりやすくなります。 MyName = ActiveSheet.Name i = InStrRev(MyName, "!") conf = MsgBox("印刷する(〃⌒o⌒)?", vbOKCancel, "印刷") If conf = vbOK Then conf = MsgBox("確認する(*^▽^*)o♪ ", vbOKCancel, "確認") If conf = vbCancel Then conf = MsgBox("印刷します!", vbOKCancel, "確認") If conf = vbOK Then myNo = Mid(MyName, i) If InStr(ws.Name, myNo) > 0 Then ws.PrintOut ElseIf conf = vbOK Then myNo = Mid(MyName, i) For Each ws In Worksheets If InStr(ws.Name, myNo) > 0 Then ws.PrintPreview End If Next ws conf = MsgBox("いいかなv(=∩_∩=)v", vbOKCancel, "印刷") If conf = vbOK Then myNo = Mid(MyName, i) For Each ws In Worksheets If InStr(ws.Name, myNo) > 0 Then ws.PrintOut ElseIf conf = vbCancel Then End If Next ws 今現在はこんな感じです。 途中までしか書いてませんか? 追記:ライブラリより (e1pw)VBA字下げとIF文Win VBAを読みやすくする記述法と基本的なIFの使い方を解説します。 http://www.excel.studio-kazu.jp/lib/e1pw/e1pw.html (ご近所PG) ---- 今は,確認するで If conf = vbCancel Then conf = MsgBox("印刷します!", vbOKCancel, "確認") If conf = vbOK Then myNo = Mid(MyName, i) If InStr(ws.Name, myNo) > 0 Then ws.PrintOut までは作動しますが,その下からの ElseIf conf = vbOK Then myNo = Mid(MyName, i) For Each ws In Worksheets If InStr(ws.Name, myNo) > 0 Then ws.PrintPreview End If Next ws conf = MsgBox("いいかなv(=∩_∩=)v", vbOKCancel, "印刷") If conf = vbOK Then myNo = Mid(MyName, i) For Each ws In Worksheets If InStr(ws.Name, myNo) > 0 Then ws.PrintOut ElseIf conf = vbCancel Then End If Next ws が,反応しないのです。 ---- 頭を揃えれば動作するのではなくて、 記述内容を分かりやすくするために頭を揃えるのです。 ここの理解は問題ありませんか? いくら If A Then 処理A If B1 Then 処理B1 ElseIf B2 Then 処理B2 と書こうが、 ElseIf B2 Then が If A Then に対応するわけではありません。 そういう勘違いをなくす為に「頭を揃えましょう」と一般に推奨されているのです。 私が先に上げた文は、ぷ〜さんの記述で今、どのIfがどのElseと対になっているかを示した物です。 ぷ〜さんが期待する位置とは違っているのではないでしょうか。 期待通りに揃えるなら、適切にEnd Ifを入れていく必要があります。 If A Then 処理A If B1 Then 処理B1 '' End If'' ElseIf B2 Then 処理B2 ''End If'' (ご近所PG) ---- 出来ました!!有難う御座いました!! ...
https://www.excel.studio-kazu.jp/wiki/kazuwiki/200504/20050428215554.txt - [detail] - similar
PREV NEXT
Powered by Hyper Estraier 1.4.13, with 97046 documents and 608224 words.

訪問者:カウンタValid HTML 4.01 Transitional