Excel VBA質問箱 IV

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

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


1800 / 76734 ←次へ | 前へ→

【80579】Re:Worksheet.Delete の動き
発言  北浦  - 19/3/14(木) 12:48 -

引用なし
パスワード
   ▼よろずや さん:
レスありがとうございます。
やぱりそうなんですね

▼マナ さん:
レスありがとうございます。
実を言いますと、一部のシートをブックからエクスポートしたり
ブックにインポートしたりしています。

エクスポートは、ブック内のシート1つを別ブックで保存しており、
インポートは、ブック内にあるインポート対象シートを削除した後、
エクスポートしたシートを取込んでいます。

このインポートの際に問題が生じています。

インポートの処理としては
 シートの Delete コマンドで、インポート対象のシートを削除し、
 インポートするシートを Copy コマンドで取り込んでいます。

通常は、特に問題が起こらないのですが、
以下のように、
 Button1 で インポート対象シートのコード名を参照した処理を行い
 Button2 で、インポート処理を行うと、
  Delete コマンドで、シートのオブジェクトが残ってしまい
  Copy コマンドで、取り込んだシートのコード名が変わり
  処理終了後、Delete コマンドで削除したオブジェクトが消えてなくなります。
  結果、違うコード名で取り込んだような状態になります。

Sub Button1_Click()
  Debug.Print SHT.Name
End Sub

Sub Button2_Click()
  Call Import
End Sub

※インポート対象のコード名が SHT とすると、インポート後は、SHT1 となる。

この後、コード名が変わっている為、別のプログラムでコード名を
参照している箇所で、エラーが発生します。

回避方法としては、インポート対象のシートに関して、
そのコード名を使用しないようにすればよいというのは、分かっているのですが、
この方法しかないのか、それ以外の方法があるのか探りたいと考えています。

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

14 hits

【80573】Worksheet.Delete の動き 北浦 19/3/13(水) 15:18 質問[未読]
【80574】Re:Worksheet.Delete の動き よろずや 19/3/13(水) 20:08 発言[未読]
【80575】Re:Worksheet.Delete の動き マナ 19/3/13(水) 20:15 発言[未読]
【80579】Re:Worksheet.Delete の動き 北浦 19/3/14(木) 12:48 発言[未読]
【80584】Re:Worksheet.Delete の動き マナ 19/3/14(木) 22:49 発言[未読]
【80585】Re:Worksheet.Delete の動き 北浦 19/3/15(金) 8:53 回答[未読]
【80591】Re:Worksheet.Delete の動き マナ 19/3/15(金) 18:54 発言[未読]
【80619】Re:Worksheet.Delete の動き 北浦 19/3/19(火) 9:12 お礼[未読]

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