1-9 KI-gif の画像保存でエラー発生
(1)エラー内容
日データを取得し、表示列を変更で不具合発生。

(2)エラー発生原因
1-1項KIkabu(nabe)実行でエラー発生と同一内容で、
コピー・ペーストを実行した時のコピーデータがクリックボードに残って、マクロで他の箇所で列又は行挿入の時、
クリックボードのデータが挿入した列又は行に貼りついてしまう不思議な現象が、Excel2016で発生する。

(3) マクロの具体的改善例
(3-1) 改善前(Excel2003〜2010では問題なし)
【Module1】
Sub セルgif2()
チャ−ト枠作成
  Set grf = ActiveSheet.ChartObjects.Add(2, 2, wid, hei).Chart
    grf.Paste
    ggg1 = grf.Name
    ggg2 = Mid(ggg1, InStr(1, ggg1, "グ", 1))
枠線なし
    ActiveSheet.ChartObjects(ggg2).Activate
    ActiveChart.ChartArea.Select
    Selection.Border.LineStyle = 0
 
gif保存
   grf.Export phn & "\" & fname & kaku
仮作成の図形削除
   grf.Parent.Delete
   ActiveSheet.Shapes(pnam2).Select
   Selection.Delete
  Range("A1").Select
End Sub

(3-2) 改善後(Excel2016に対応)
ピンク色行はExcel2016で変更した箇所。追加したグラフ枠名を読み取りそれをアクティブにてから貼付。
Excel2016はファイル保存(Export)の場合も、対象のグラフ枠をアクティブにして実行しないと不具合になります。
なお下記改善マクロは、Excel2003〜2010でも問題なく動きます。
【Module1】
Sub セルgif2()
チャ−ト枠作成
  Set grf = ActiveSheet.ChartObjects.Add(2, 2, wid + 8, hei + 8).Chart
        For Each zu In ActiveSheet.ChartObjects
             cname = zu.Name
        Next
        ActiveSheet.ChartObjects(cname).Activate
        ActiveChart.Paste
 
 '枠線なし
   ActiveSheet.ChartObjects(cname).Activate
    ActiveChart.ChartArea.Select
   Selection.Border.LineStyle = 0
 
gif保存
ActiveSheet.ChartObjects(cname).Activate
   grf.Export phn & "\" & fname & kaku
 
仮作成の図形削除
   grf.Parent.Delete
   ActiveSheet.Shapes(pnam2).Select
   Selection.Delete
  Range("A1").Select
End Sub

(4)Excel2016で操作が一部変わった
Kiigif▼ → 画像の切り抜き 項目を実行した時、「画像入力」のアイコンが変わり操作方法も変わっています。
【図1-9a】Excel2010のボタン(一番左)


【図1-9b】Excel2016のボタン(一番左)


【図1-9c】Excel2010の「画像入力」クリックで表示ダイアログ


【図1-9d】Excel2016の「画像入力」クリックで表示ダイアログ
「参照」クリックで、上図【図1-9c】が表示されます。




【戻る】    【HPへ】