アプリ版:「スタンプのみでお礼する」機能のリリースについて

エクセル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

A 回答 (1件)

//////


Worksheets("最新部品登録表").Select
x = Cells(Rows.Count, "A").End(xlUp).Row
Rows("1:" & x).Copy
With ThisWorkbook.Sheets("マスタ").Range("A1")
.PasteSpecial Paste:=xlPasteColumnWidths
.PasteSpecial Paste:=xlAll
End With
ActiveWorkbook.Close SaveChanges:=False
End Sub

とか。
    • good
    • 0
この回答へのお礼

お礼遅くなりました。
ありがとうございます。

お礼日時:2013/05/14 14:42

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!