Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


16 / 3840 ページ ←次へ | 前へ→

【82162】Re:グラフのコピー
質問  あおこ  - 23/6/14(水) 16:31 -

引用なし
パスワード
   ▼マナ さん:
>▼あおこ さん:
>
>こんな感じで書き直すとどうなりますか?
>Sheet1のグラフ雛形を繰り返しSheet2にコピーする例です。

ご回答ありがとうございます。
ご提示のコードを試させていただきました。
(少し変更しています。)

Sheet2.Paste Sheet2.Range("k17").Offset(k * 17)のところで
実行時エラー1004「WorksheetクラスのPasteメソッドが失敗しました」
のエラーで処理が止まりますので
DoEvents も書き足しました。(ネットで見つけた解決法です。あまり良くないでしょうか?)

Sub test()
  Dim cho As ChartObject
  Dim k As Long
  Dim H As Double, W As Double
  
  Set sh_A2 = Worksheets("学校")
  
  Set cho = Worksheets("基本グラフ").ChartObjects(1)
  H = sh_A2.Range("A1:A15").Height
  W = sh_A2.Range("K1:S1").Width
  k=0

  Do
    cho.Copy
    sh_A2.Activate
    DoEvents
    sh_A2.Paste sh_A2.Range("k17").Offset(k * 17)
    With sh_A2.ChartObjects(k + 1)
'      .Chart.SetSourceData Source:=R
'      .Chart.ChartTitle.Text = R(1).Value
      .Height = H
      .Width = W
    End With
    k = k + 1
  Loop Until k > 8
  
End Sub

上記コードで、今回のアンケートの質問数9個のグラフが問題なくコピーされ、繰り返し試しても落ちることはありませんでしたので、下記のように全体のコードを変更してみました。
変更後、15回ほど繰り返して処理を行いましたが、今のところ大丈夫のようです。

ありがとうございました!

ちなみに、他でも使えるように、できれば、グラフ終端を取得して次のグラフの位置決めをしたいのですが、当初こちらが記載していたコード(↓)だと動きが遅いんでしょうか?

G_GYO = .ChartObjects(.ChartObjects.Count).BottomRightCell.Row + 2 'グラフの右下のセルの行
でグラフコピーの都度セル位置を取得

最初、その部分を残してコードを走らせたら、けっこうな確率で「応答なし」となり落ちました。。

ご提示いただいた .Paste .Range("k17").Offset(k * 17)の、「17」を都度変えていく方が無難でしょうか?

もしよろしければ、ご教示願えると幸いです。


Sub テスト指定校結果作成()

 Set wb_A = ThisWorkbook
 Set sh_A1 = wb_A.Worksheets("作業用")
 Set sh_A2 = wb_A.Worksheets("クロス集計_割合")
 Set sh_A3 = wb_A.Worksheets("基本グラフ")
 Set sh_A4 = wb_A.Worksheets("結果ひな形")
 
 
  Application.DisplayAlerts = False
  Application.ScreenUpdating = False
  gakko = sh_A1.Range("I14")
 
  '’学校名シートがないか確認して追加、あれば削除するコードを記述(記載省略)
 
 '=======================================================================
  Set sh_A5 = wb_A.Worksheets(gakko)
  With sh_A5
   sh_A2.UsedRange.Copy
   .Activate
   .Range("A2").Select
   Selection.PasteSpecial Paste:=xlPasteAll
   Selection.PasteSpecial Paste:=xlPasteColumnWidths '<書式(列幅)もコピー>
   Application.CutCopyMode = False
  
   lastRow1 = .Range("A" & Rows.Count).End(xlUp).Row
   .Rows("2:" & lastRow1).Select 'フォント変更
   Selection.Font.Size = 10
   Selection.Font.Name = "MS Pゴシック"
   Selection.VerticalAlignment = xlCenter
   .Rows("2:200").RowHeight = 15
   ' Selection.HorizontalAlignment = xlCenter
   ActiveWindow.Zoom = 80 '<アクティブシートの表示を80%にします。>


‘学校名からコードg_codeを参照する処理を記述(記載省略)
lastRow1 = .Range("A" & Rows.Count).End(xlUp).Row

'’不要行削除
   For GYO = lastRow1 To 2 Step -1
   If Left(.Cells(GYO, 1), 2) <> "質問" And .Cells(GYO, 1) <> "合計" And .Cells(GYO, 1) <> g_code Then
    .Range(GYO & ":" & GYO).Delete
   End If
   Next GYO
  
  
   lastRow1 = .Range("A" & Rows.Count).End(xlUp).Row
   '質問番号追加及び0値クリア
   For GYO = 2 To lastRow1
    If Left(.Cells(GYO, 1), 2) = "質問" Then
      .Cells(GYO, 2) = Right(.Cells(GYO, 1), 1) & " " & .Cells(GYO, 2)
    Else
      lastcol1 = .Cells(GYO, Columns.Count).End(xlToLeft).Column '最終列を取得
      For RETSU = 3 To lastcol1
        If .Cells(GYO, RETSU) = 0 Then
          .Cells(GYO, RETSU) = ""
        End If
      Next RETSU
    End If
   Next GYO
     
   'ウィンドウ枠の固定
   .Range("C1").Select
   ActiveWindow.FreezePanes = True
   .Range("A1").Select
  
  ''元データ完成
  '=========================================
  ''データを基にグラフを作成
   Set cho = sh_A3.ChartObjects(1) 'コピー元のグラフ
   H = .Range("A1:A15").Height 'グラフの高さ
   W = .Range("K1:S1").Width 'グラフの幅
   k = 0’グラフの数の変数
  
  lastRow1 = .Range("A" & Rows.Count).End(xlUp).Row
  GYO = 2 '開始行
   
  Do While .Cells(GYO, 1).Value <> ""
   .Activate
  
  '=========================================
  '質問ごとのデータ範囲を選択
   GYO1 = GYO ' グループの先頭行→GYO1
   GYO = GYO + 1
    ' 次の行から同じグループでない行を見つける
    Do While .Cells(GYO, 1).Value <> "合計" '条件を満たしている間処理を繰り返す
      GYO = GYO + 1
    Loop
   GYO2 = GYO  ' 同じグループの最終行→GYO2
   GYO = GYO + 1
  
   lastcol1 = .Cells(GYO1, Columns.Count).End(xlToLeft).Column '最終列を取得
   .Range(.Cells(GYO1, 2), .Cells(GYO2, lastcol1 - 1)).Select
    
   Set R = Selection
   
  '=========================================
  'グラフ作成
  
    cho.Copy
    DoEvents
    .Paste .Range("k17").Offset(k * 17)
    With .ChartObjects(k + 1)
      .Chart.SetSourceData Source:=R
      .Chart.ChartTitle.Text = R(1).Value
      .Height = H
      .Width = W
    End With
    k = k + 1
  Loop

  'グラフ作成終了
  '=========================================

   G_GYO = .ChartObjects(.ChartObjects.Count).BottomRightCell.Row + 2 'グラフの右下のセルの行
  
   ''結果ひな形をコピー
   sh_A4.UsedRange.Copy
   .Activate
   .Range("K2").Select
  
   Selection.PasteSpecial Paste:=xlPasteAll
   'Selection.PasteSpecial Paste:=xlPasteColumnWidths '<書式(列幅)もコピーします。>
   Application.PrintCommunication = False '//プリンタとの接続を切断
   '印刷範囲設定 及び横1ページに収める
   .PageSetup.PrintArea = .Range(.Cells(1, 10), .Cells(G_GYO, 20)).Address
   .PageSetup.Zoom = False
   .PageSetup.FitToPagesWide = 1
   .PageSetup.FitToPagesTall = False
   Application.PrintCommunication = True '//プリンタと再接続
  End With 'sh_A5
  
  Application.DisplayAlerts = True
  Application.ScreenUpdating = True
  
  MsgBox gakko & "分を作成しました", vbInformation

End Sub
・ツリー全体表示

【82161】Re:グラフのコピー
発言  マナ  - 23/6/13(火) 23:21 -

引用なし
パスワード
   ▼あおこ さん:

こんな感じで書き直すとどうなりますか?
Sheet1のグラフ雛形を繰り返しSheet2にコピーする例です。

Sub test()
  Dim cho As ChartObject
  Dim k As Long
  Dim H As Double, W As Double
  
  Set cho = Sheet1.ChartObjects(1)
  H = Sheet2.Range("A1:A15").Height
  W = Sheet2.Range("K1:S1").Width
  
  Do
    cho.Copy
    Sheet2.Paste Sheet2.Range("k17").Offset(k * 17)
    With Sheet2.ChartObjects(k + 1)
'      .Chart.SetSourceData Source:=R
'      .Chart.ChartTitle.Text = R(1).Value
      .Height = H
      .Width = W
    End With
    k = k + 1
  Loop Until k > 5
  
End Sub
・ツリー全体表示

【82160】Re:グラフのコピー
発言  あおこ  - 23/6/13(火) 10:08 -

引用なし
パスワード
   ▼マナ さん:
>▼あおこ さん:
>
>>下記のうち、グラフをコピーする部分を丸ごと削除すると、数回試しても落ちることはなかったので、グラフのコピー箇所に問題があるのだろうと思いますが、改善方法がよくわかりません。
>
>「グラフをコピーする部分を丸ごと」とは、どこでしょうか?

御覧いただきありがとうございます。


グラフをコピーするところまで残して、以下の、貼り付けてサイズを設定するコードを削除しています。
コピーまるごとではないですね(^^;)
きちんとお示しできていなくて申し訳ありません。

.Paste
Application.CutCopyMode = False
.ChartObjects(.ChartObjects.Count).Left = .Range("K" & G_GYO).Left
.ChartObjects(.ChartObjects.Count).Top = .Range("K" & G_GYO).Top
.ChartObjects(.ChartObjects.Count).Chart.SetSourceData Source:=S '選択範囲をデータソースに
.ChartObjects(.ChartObjects.Count).Chart.ChartTitle.Text = R.Value
.ChartObjects(.ChartObjects.Count).Height = .Range("A1:A15").Height
.ChartObjects(.ChartObjects.Count).Width = .Range("K1:S1").Width


それと グラフがないので、グラフの右下位置を取得する下記の式2か所も
G_GYO = .ChartObjects(.ChartObjects.Count).BottomRightCell.Row + 2 
G_GYO = 17 
に変更しています。
・ツリー全体表示

【82159】Re:グラフのコピー
発言  マナ  - 23/6/12(月) 22:36 -

引用なし
パスワード
   ▼あおこ さん:

>下記のうち、グラフをコピーする部分を丸ごと削除すると、数回試しても落ちることはなかったので、グラフのコピー箇所に問題があるのだろうと思いますが、改善方法がよくわかりません。

「グラフをコピーする部分を丸ごと」とは、どこでしょうか?
・ツリー全体表示

【82158】グラフのコピー
質問  あおこ  - 23/6/12(月) 15:00 -

引用なし
パスワード
   いつも参考にさせていただきありがとうございます。


アンケートの集計結果を作成するマクロを組んでいます。

「クロス集計_割合」に、質問ごとにすべての学校分の集計があり、
指定した学校分のデータを抽出し、あらかじめ作成したグラフをコピーし、
「結果ひな形」の通知様式と組み合わせて作成しています。

指定校分のデータ抽出は、「クロス集計_割合」を複写後、指定校以外のデータ行を削除し行っています。
データ作成後、質問ごとに順に範囲を選択し「基本グラフ」にあるグラフをコピーし、データソースを変更し作成しています。
今回のアンケートは9問あるため、グラフは1シートに9個コピーされます。

下のようにコードを書いていますが、ブレークポイントを入れて少しずつ実行した場合、きちんと作成されるのですが、一気に処理すると、時々固まって落ちます。(3〜4回に1回応答なしになって落ちます。)


下記のうち、グラフをコピーする部分を丸ごと削除すると、数回試しても落ちることはなかったので、グラフのコピー箇所に問題があるのだろうと思いますが、改善方法がよくわかりません。
ご指摘、もしくはヒントでもいただけると幸いです。

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


Sub 指定校結果作成()

 Set wb_A = ThisWorkbook
 Set sh_A1 = wb_A.Worksheets("作業用")
 Set sh_A2 = wb_A.Worksheets("クロス集計_割合")
 Set sh_A3 = wb_A.Worksheets("基本グラフ")
 Set sh_A4 = wb_A.Worksheets("結果ひな形")
  gakko = sh_A1.Range("I14")
 
  MsgBox gakko & "分の結果を作成します", vbInformation
 
  Application.DisplayAlerts = False
  Application.ScreenUpdating = False
  gakko = Left(gakko, InStr(gakko, "中"))
 
 '’学校名シートがないか確認して追加、あれば削除するコードを記述(記載省略)
 ‘追加したシート名をgakkoに変更するコードを記述(記載省略)  
  
  Set sh_A5 = wb_A.Worksheets(gakko)
  With sh_A5
   sh_A2.UsedRange.Copy
   .Activate
   .Range("A2").Select
   Selection.PasteSpecial Paste:=xlPasteAll
   Selection.PasteSpecial Paste:=xlPasteColumnWidths '<書式(列幅)もコピーします。>
   Application.CutCopyMode = False
  
  ‘学校名からコードg_codeを参照する処理を記述(記載省略)

   lastRow1 = .Range("A" & Rows.Count).End(xlUp).Row
   '’不要行削除
   For GYO = lastRow1 To 2 Step -1
   If Left(.Cells(GYO, 1), 2) <> "質問" And .Cells(GYO, 1) <> "合計" And .Cells(GYO, 1) <> g_code Then ‘指定校・質問行・合計行以外のデータを削除
    .Range(GYO & ":" & GYO).Delete
   End If
   Next GYO
 
  
   lastRow1 = .Range("A" & Rows.Count).End(xlUp).Row
   '質問番号追加および0値クリア
   For GYO = 2 To lastRow1
    If Left(.Cells(GYO, 1), 2) = "質問" Then
      .Cells(GYO, 2) = Right(.Cells(GYO, 1), 1) & " " & .Cells(GYO, 2)
    Else
    '0値クリア
      lastcol1 = .Cells(GYO, Columns.Count).End(xlToLeft).Column '読み込み行の最終列を取得
      For RETSU = 3 To lastcol1
        If .Cells(GYO, RETSU) = 0 Then
          .Cells(GYO, RETSU) = ""
        End If
      Next RETSU
    End If
   Next GYO
  ''ここまででグラフ元データ完成
  '=========================================
  ''データを基にグラフを作成
  lastRow1 = .Range("A" & Rows.Count).End(xlUp).Row
  GYO = 2 '開始行
  G = 0
  Do While .Cells(GYO, 1).Value <> ""
   .Activate
  
  '=========================================
  '質問ごとのデータ範囲を選択
   GYO1 = GYO ' グループの先頭行→GYO1
   GYO = GYO + 1
    ' 次の行から同じグループでない行を見つける
    Do While .Cells(GYO, 1).Value <> "合計" '条件を満たしている間処理を繰り返す
      GYO = GYO + 1
    Loop
   GYO2 = GYO  ' 同じグループの最終行→GYO2
   GYO = GYO + 1
   G = G + 1 '設問数をカウント
   lastcol1 = .Cells(GYO1, Columns.Count).End(xlToLeft).Column '読み込み行の最終列を取得
   .Range(.Cells(GYO1, 2), .Cells(GYO2, lastcol1 - 1)).Select
    
   Set R = Selection.Item(1)
   Set S = Selection
  '=========================================

   If G = 1 Then '1つめのグラフの位置(行)
    G_GYO = 17
   Else
    G_GYO = .ChartObjects(.ChartObjects.Count).BottomRightCell.Row + 2 'グラフの右下のセルの行
   End If
    'sh_A3.ChartObjects(1).Copy.Range ("A1")
    sh_A3.ChartObjects(1).Copy
    DoEvents
    
    .Activate
    .Range("A1").Select
    .Paste
    Application.CutCopyMode = False
    .ChartObjects(.ChartObjects.Count).Left = .Range("K" & G_GYO).Left
    .ChartObjects(.ChartObjects.Count).Top = .Range("K" & G_GYO).Top
    .ChartObjects(.ChartObjects.Count).Chart.SetSourceData Source:=S '選択範囲をデータソースに
    .ChartObjects(.ChartObjects.Count).Chart.ChartTitle.Text = R.Value
    .ChartObjects(.ChartObjects.Count).Height = .Range("A1:A15").Height
    .ChartObjects(.ChartObjects.Count).Width = .Range("K1:S1").Width
   Loop
  
   G_GYO = .ChartObjects(.ChartObjects.Count).BottomRightCell.Row + 2 'グラフの右下のセルの行
  
   ''結果ひな形をコピー
   sh_A4.UsedRange.Copy
   .Activate
   .Range("K2").Select
   Selection.PasteSpecial Paste:=xlPasteAll
   'Selection.PasteSpecial Paste:=xlPasteColumnWidths '<書式(列幅)もコピーします。>
   Application.PrintCommunication = False '//プリンタとの接続を切断
   '印刷範囲設定 及び横1ページに収める
   .PageSetup.PrintArea = .Range(.Cells(1, 10), .Cells(G_GYO, 20)).Address
   .PageSetup.Zoom = False
   .PageSetup.FitToPagesWide = 1
   .PageSetup.FitToPagesTall = False
   Application.PrintCommunication = True '//プリンタと再接続
  End With 'sh_A5
  
  Application.DisplayAlerts = True
  Application.ScreenUpdating = True
  
  MsgBox gakko & "分を作成しました", vbInformation

End Sub
・ツリー全体表示

【82157】共有ファイルの管理表に新しいレコードを...
質問  Y  - 23/6/8(木) 20:56 -

引用なし
パスワード
   マクロ初心者です。
拙い文章で伝わりづらい点があるかと思いますが、ご容赦ください。

共有設定をしているエクセルの管理表に、複数人が新しい行に情報を追記していくのですが、
作業が被ったときに、誤って人の情報を上書きしてしまうことが極力ないような仕組みにしたいと思っています。
そのため、別シートに入力フォームを作り、登録ボタンをおすと管理表に追記されるというマクロをつくりました。
そこで、最初と最後に上書き保存するマクロを入れていれば、ボタンを押したタイミングで少しでも先に他の人が登録された情報が更新されるので、最終行の判定も常に最新の状態でできるかと思っていました。
ところがうまくいかず、下記に作成したマクロを記載しますので、よい方法があればご教示いただけますでしょうか。

※入力フォームがSheet1,管理表がSheet2


Sub ファイル名()

ThisWorkbook.Save

Range("B3:I3").Select
Selection.Copy
Sheets("Sheet2").Select
n = Cells(Rows.Count, "B").End(xlUp).Row + 1
Range("B" & n).Select
ActiveSheet.Paste

Sheets("Sheet1").Select
Range("B3:I3").Select
Selection.ClearContents

ThisWorkbook.Save

End Sub

ちなみに、これでうまくいかなかったので、
下記3つのボタンを設置することでなんとかいけるかためしています。。
フォームに入力する前におす上書き(更新)ボタン@
※フォームのクリアとフォームの更新情報が被らないようにするため
登録ボタンBを押す前におす上書き(更新)ボタンA
※登録が被った際に最終行を最新の状態で取得するため
・ツリー全体表示

【82156】Re:セル内の~を連続する数値にするには
お礼  ken E-MAIL  - 23/6/8(木) 19:29 -

引用なし
パスワード
   マナさん
ありがとうございました。
コードの意味は今解析中ですが
思うように動きました。
凄いですね。
自分でも意味が分かって
書けるようになる様に勉強します。
・ツリー全体表示

【82155】Re:セル内の~を連続する数値にするには
お礼  ken E-MAIL  - 23/6/8(木) 7:10 -

引用なし
パスワード
   マナさん
有難う御座います。
これから会社に行って試してみます。
取り急ぎお礼まで。
・ツリー全体表示

【82154】Re:セル内の~を連続する数値にするには
発言  マナ  - 23/6/7(水) 19:47 -

引用なし
パスワード
   Dim s, e, k As Long
Dim num As String

For Each e In Split("1〜5,18〜25", ",")
  s = Split(e, "〜")
  For k = s(0) To s(UBound(s))
    num = num & "," & k
  Next
Next

MsgBox Mid(num, 2)
・ツリー全体表示

【82153】セル内の~を連続する数値にするには
質問  ken  - 23/6/7(水) 16:26 -

引用なし
パスワード
   いつもお世話になっております。
何方かお教え下さい。

セルに
1〜5,18〜25
と入力されているのを
1,2,3,4,5,18,19,20,21,22,23,24,25
に変更するマクロを教えてください。
いろいろやってみましたが上手くいきません。

宜しくお願い致します。
・ツリー全体表示

【82152】Re:vba
発言  マナ  - 23/6/4(日) 20:35 -

引用なし
パスワード
   Worksheets("Sheet1").Range("A1").Value = TextBox1.Text
 
・ツリー全体表示

【82151】vba
質問  とーる E-MAIL  - 23/6/1(木) 21:19 -

引用なし
パスワード
   セルA1&#12316;A3までテキストボックスの内容を転記
セルA4は空白
セルA5&#12316;A10まではテキストボックスの内容転記
セルA11は空白
のコード知りたいです。

宜しくお願い致します。
・ツリー全体表示

【82150】Re:テキストボックス
発言  マナ  - 23/5/31(水) 18:56 -

引用なし
パスワード
   ht tps://www.239-programing.com/cgi-bin/excelvba_bbs.cgi?id=1419
・ツリー全体表示

【82149】Re:テキストボックス
発言  マナ  - 23/5/24(水) 16:29 -

引用なし
パスワード
   ▼ハヤップ さん:

Dim txt As String

txt = "001 x =+ 4.4235mm y =+ 2.1256mm  z =+ 0.1235mm"
MsgBox WorksheetFunction.Round(Val(Split(txt, "=")(1)), 2)
・ツリー全体表示

【82148】Re:テキストボックス
質問  ハヤップ  - 23/5/24(水) 12:55 -

引用なし
パスワード
   ▼ハヤップ さん:
>初めての投稿になります。ご教授宜しくお願い致します。
>ユーザーフォームテキストボックス内に
>001 x =+ 4.4235o y =+ 2.1256o  z =+ 0.1235o
>が続けて入力されるのでxの4.42のみの値を抽出しExcelに張り付けたい場合どのような方法がありますでしょうか。
>宜しくお願い致します。

スミマセン入力不足でした。
001から始まるx,y,zの値は毎回変動します。
その際上記で書いたx 部分のみ(0.00)&#11013;&#65039;毎回変動      の値のみを抽出したいです。
すみませんがご教授宜しくお願い致します。
・ツリー全体表示

【82146】テキストボックス
質問  ハヤップ  - 23/5/23(火) 19:49 -

引用なし
パスワード
   初めての投稿になります。ご教授宜しくお願い致します。
ユーザーフォームテキストボックス内に
001 x =+ 4.4235o y =+ 2.1256o  z =+ 0.1235o
が続けて入力されるのでxの4.42のみの値を抽出しExcelに張り付けたい場合どのような方法がありますでしょうか。
宜しくお願い致します。
・ツリー全体表示

【82145】Re:ユーザーフォーム内でのコマンドボタ...
お礼  ken E-MAIL  - 23/5/17(水) 7:16 -

引用なし
パスワード
   ▼都下 さん:
返信ありがとうございます。
こんな書き方があるんですね。

今回は
タブストップ フォレスでコマンドボタンにフォーカスが
いくようにしました。

有難う御座いました。
・ツリー全体表示

【82144】Re:ユーザーフォーム内でのコマンドボタ...
発言  都下  - 23/5/14(日) 17:32 -

引用なし
パスワード
   Private Sub TextBox2_AfterUpdate()
Application.OnTime Now(), "aaaab"
End Sub

標準モジュール
Sub aaaab()
UserForm1.CommandButton2.SetFocus
End Sub

とかとか
・ツリー全体表示

【82143】ユーザーフォーム内でのコマンドボタンへ...
質問  ken E-MAIL  - 23/5/10(水) 16:40 -

引用なし
パスワード
   いつもお世話になっております。
質問させて下さい。
ユーザーフォーム内にフレームがありその中にTextBoxとComboBoxが有ります。
ComboBoxのデフォルトの値が変更されない場合にTextBoxの値を入力したらコマンドボタンにフォーカスが移動するようにする場合はどのようなコードを書いたら良いでしょうか?

Private Sub TextBox1_AfterUpdate()

End Sub
タブオーダーも変更してみましたが、フレーム内の為直ぐにコマンドボタンには移動しないみたいです。

何方か宜しくお願い致します。
・ツリー全体表示

【82142】印刷プレビュー
質問  JY  - 23/4/30(日) 12:11 -

引用なし
パスワード
   EXCELVBAで、thisworkbookから、callにてモジュールを呼び出しています。

Private Sub Workbook_Open()
Call *****
End Sub 印刷プレビューを出しているのですが、ローカルではOKなのですが、ネットワークドライブにファイルを置いて起動すると、印刷プレビューの「印刷、ズーム、プレビュー」がグレーアウトして選択できなくなります。

PrintOut Preview:=True

原因、直し方、分かる方いらっしゃいましたら、教えて下さい。
よろしくお願い致します。
・ツリー全体表示

16 / 3840 ページ ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free