
Excelで別のソフトから持ってきたデータを貼り付ける際、
手動でペーストを行うと日付データの西暦部分は4桁になっているのですが、
マクロでペーストを行うと西暦がエラー確認つきの2桁表示になってしまいます。
(因みにこのマクロは4桁で表示された手動でのペーストの動きを登録したものです)
書式設定を確認するとyyyy/m/dd表示になっています。
ただ手動でペーストを行った際にはプレビューに2020/01/01等の日付が出るのですが、
マクロで行った方ではプレビューに何も出ません。他の表示設定にしてもプレビューされません。
そして謎なのが、このExcelファイルを別のPCで開きマクロを実行すると西暦が表示は4桁のペーストされます。
つまりはマクロ自体は間違っていないということでしょうか?
どこをいじれば、どう設定すれば西暦が4桁表示のままペーストされるのでしょうか?
どなたかご存知の方ご指導よろしくお願いします。
ペースト位なら手でやれば?というのは聞きたいこととズレてしまうので恐れ入りますが御遠慮下さい。

A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
> そして謎なのが、このExcelファイルを別のPCで開きマクロを実行すると西暦が表示は4桁のペーストされます。
マクロをいつも書いていても、結構、このズレは悩まされますね。
>どこをいじれば、どう設定すれば西暦が4桁表示のままペーストされるのでしょうか?
シート全体で、西暦4桁という方法がありますが、マクロの設定方法では、Cells.NumberFormat ですれば良いはずです。
(昔は、これで良かったけれども、極端なサイズ増になるのだったら、この方法はダメです)
また、PCごとに違うのは、本体の設定の「時刻と言語」の表示方法で、それをなおすことは、VBAでは禁断のマクロだと思います。
私は、個別に、以下のようにしています。
>Excelで別のソフトから持ってきたデータを貼り付ける際、
たとえば、LRow は、コピーされる側の行数, 8 は列の幅
だから、LRow は分からなければ、キメウチで、予め指定した数字でもよいでしょう。
A1から貼り付けの場合。
最初に
Cells(1, 1).Resize(LRow, 8).NumberFormatLocal = "yyyy/mm/dd"
次に貼り付け、なんていう方法を取っています。
「書式を含めて貼り付け」というのは、シートのセルの範囲からの別のシートへの貼り付けだけれども、
いずれに場合でも、基本的には、書式でセルを整地しておいて、その次に値を貼り付けるというのがよいでしょう。
逆だと、どうもうまく行かない時があるようです。
それと、他のソフトウェアからというと、貼り付けが、もうちょっと話が複雑になっているはすですが。他のソフトウェアから、別の成分が入っている可能性がありますので、データをテキスト化してやる必要がありますね。
===================
と、ここまで書いて、アップしようとして気が付きました。
>マクロでペーストを行うと西暦がエラー確認つきの2桁表示になってしまいます。
私の場合、こうはなりません。どこか足りない情報があるのかもしれません。
貼り付けの後のエラー表示で考えられるのは、数字を文字で貼り付けた場合です。
その場合、どうやって相手のソフトウェアから、コピーしてExcelのシートにペーストしているか、明らかにしないといけないのかもしれません。
とにかく、====前までで、試してみてください。
No.2
- 回答日時:
こんにちは
>別のソフトから持ってきたデータを貼り付ける際~~
扱う対象が固定の形式として信頼できるのか不明なので、実行環境によっては結果が異なるようなこともあり得るのではないでしょうか?
実際に、どのような処理を行っているのかわかりませんが、データのチェックを行わず単なるコピペ処理だけを行っているとするなら、データに依存する部分がかなりあることになりそうです。
データが値のみなのか、オブジェクトなのかによっても変わってくると思われます、
データの影響を減らしたいのであれば、、
1)元データの値や形式をチェック
2)異なる場合は設定したい形式に変換
3)セルへ値をセットし、書式を設定する
といった手順で処理をすれば、必ず4桁表示になるものと思います。
もっと簡便にやるなら、コピペで値をセット後にそのセルの書式を(再)設定しておけば宜しいかと。
対象Cell.NumberFormatLocal = "yyyy/mm/dd"
のような感じです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/03 12:30
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/03 11:27
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 2 2022/03/25 08:33
- Visual Basic(VBA) Excel(VBA) 特定の条件に該当する行の値、書式を同じセルにコピ&ペーストしたいです 1 2022/05/21 18:18
- Visual Basic(VBA) Excelのマクロについて教えてください。 1 2023/03/12 12:16
- Excel(エクセル) EXCELの書式設定を固定することはできませんか? 5 2023/06/20 17:05
- Excel(エクセル) Excel起動時にエラーダイアログが表示される 3 2022/07/28 19:52
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 2 2023/01/23 17:13
- Visual Basic(VBA) VBA アドインについて お詳しい方 ご教授をお願いします。 相談事項 現在以下の対応を実施した所、 1 2022/11/02 16:53
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/01/23 11:02
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
首吊りどこ締めるの
-
彼女のことが好きすぎて彼女の...
-
風俗店へ行く前のご飯
-
EXCELで式からグラフを描くには?
-
血液検査の結果が悪くefgrの値...
-
検便についてです。 便は取れた...
-
VLOOKUP関数を使用時、検索する...
-
至急!尿検査前日にオナニーし...
-
尿検査前日に自慰行為した時の...
-
2つの数値のうち、数値が小さい...
-
値が入っているときだけ計算結...
-
勃起する時って痛いんですか? ...
-
納豆食べた後の尿の納豆臭は何故?
-
ExcelのVBAでフォームが表示さ...
-
精子に血が・・・
-
エクセルのラベルの値(文字列...
-
小数点以下を繰り上げたものを...
-
エクセルでエラーが出て困って...
-
最近、飲酒すると手のひらが真...
-
エクセルでθを求めたい。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
首吊りどこ締めるの
-
彼女のことが好きすぎて彼女の...
-
イタリアから帰国する際、肉製...
-
2つの数値のうち、数値が小さい...
-
健否~書類の書き方~
-
VLOOKUP関数を使用時、検索する...
-
値が入っているときだけ計算結...
-
小数点以下を繰り上げたものを...
-
エクセルで空白セルを含む列の...
-
EXCELで条件付き書式で空白セル...
-
リンク先のファイルを開かなく...
-
ある範囲のセルから任意の値を...
-
精子に血が・・・
-
エクセルで数式の答えを数値と...
-
風俗店へ行く前のご飯
-
エクセル指定した範囲からラン...
-
一番多く表示のある値(文字列...
-
Excel 数値の前の「 ' 」を一括...
-
ワードのページ番号をもっと下...
-
MIN関数で空白セルを無視したい...
おすすめ情報