エクセル2003です。
マクロが組まれたワークブックにて以下のマクロを起動します。
選択したエクセルファイルのSheet1のデータを
マクロが組み込まれたブックのシート(マスタ)にコピーし
選択したファイルには何もしないで閉じます。
選択ファイルの中でF列だけが書式設定(文字列)になっていて
それがコピーされたシート(マスタ)では以下のように表示されてしまいます。
選択した
ファイル → シート(マスタ)での表示
での表示
500510228 → 5.01E+08
400302694 → 4E+08
403002693 → 4.03E+08
400302695 → 4E+08
400302939 → 4E+08
これはどのようにすれば選択したファイル
で表示されていたように出来ますか?
ちなみに処理終了後、シート(マスタ)の
F列全行の書式設定を数値にしたら選択したファイルと同じ
表示になりましたが、それしか方法は無いでしょうか?
よろしくお願いします。
Sub ファイル取り込み()
'2013年4月11日
Dim 選択ファイル
Dim 選択済ファイル As Worksheet
Dim x As Long
ThisWorkbook.Sheets("マスタ").Select
Cells.Select
Selection.Delete Shift:=xlUp
MsgBox "編集したいデータを選択してください", vbInformation, "手順"
MsgBox "ファイル選択画面を開きます", vbInformation, "ファイル選択"
選択ファイル = Application.GetOpenFilename
If 選択ファイル = False Then
MsgBox "中止します", vbExclamation
Exit Sub 'キャンセル選択時
Else
Workbooks.Open 選択ファイル
End If
'選択ファイルが正しいか確認。シート名(最新部品登録表)が存在するか確認。
For Each 選択済ファイル In Worksheets
If 選択済ファイル.Name = "最新部品登録表" Then 判定 = True
Next 選択済ファイル
If 判定 = False Then
MsgBox "選択したファイルが" & vbCrLf & _
"間違っている可能性があります。", vbExclamation, "【警告】"
MsgBox "今までの作業を保存しないで" & vbCrLf & _
"プログラムを終了します", vbExclamation, "終了"
ActiveWorkbook.Close SaveChanges:=False '選択ファイルを何もしないで閉じる
Exit Sub 'プログラム終了
Else
End If
Worksheets("最新部品登録表").Select
x = Cells(Rows.Count, "A").End(xlUp).Row
Rows("1:" & x).Copy ThisWorkbook.Sheets("マスタ").Range("A1")
ActiveWorkbook.Close SaveChanges:=False
End Sub
↧