[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『またお助けください』(ちょいボケ親父)
Sub 転記()
Dim GYO As Long
GYO = Range("$a$65536").End(xlUp).Row
If Cells(GYO, 1).Value <> "" Then GYO = GYO + 1 Cells(GYO, 1).Resize(1, 13).Value = Range("$a$2:$m$2").Value
End Sub
上記コードを作りましたが、セル a2 には日付をctrl+;で入れるように
していますが、転記先で反対になります 2007/4/22が 22/4/2007に なんとか転記先でも2007/4/22にならないでしょうか?
こんな感じでいかがですか?
Sub 転記() Dim GYO As Long
GYO = Range("a" & Rows.Count).End(xlUp).Row + 1
With Cells(GYO,1).Resize(,13) .Value = Range("a2").Resize(,13).Value .NumberFormat = "yyyy/m/d" End With End Sub (seiya)
小姑レス失礼します。 ちょいボケ親父さん、『 』内には “内容の要約”をお願いします。
(HANA)
(seiya)さん ありがとうございます、早速コピペしました また、(HANA)さん、ご指摘ありがとうございます。気をつけます (seiya)さんごめんなさい、データー不足でした a1 b1 c1 d1 e1 ..... 日付 名前 名前 名前 名前 2004/4/22 1 2 3 4 となっています
a5 b5 c5 d5 e5 22/4/2004 1 2 3 4 こうなります 試さず先にコピペしたのでもう一度お願いします
でしたら、 .NumberFormat = .... を .Cells(1).NumberFormat = ... にしてみてください。 (seiya)
(seiya)さん、同じ結果です???
a5の表示が 22/4/2004 のまま、ということですか? Ctrl+; で入植されているなら、シリアル値なので 変わると思うのですが... (seiya)
これでどうでっか? With Cells(GYO, 1) .Resize.Value = Range("a2").Resize(, 13).Value .NumberFormatLocal = "yyyy/m/d" End With (弥太郎)
うーーん、 弥太郎さん、 NumberFormatLocal は使用したことが無いのですが、 NumberFormat との違いはあるのですか? (seiya)
逆にあたしゃNumberFormatは使うたこと無いんですわ。 で、マクロの記録に登場するNumberFormatLocalばっかしを使うてますけど 私の環境では両方OKデスワ。 親父さんがでけんっちゅうことですので、微妙な差異があるかもしれんのんで 呈示してみたんですけどなぁ。 (弥太郎)
そーですか、 どちらでもいけそうですよね... (seiya)
(弥太郎)さん a2 の日付のみ転記され b2:m2 が転記されません
すびません(汗 こうですワ。 With Cells(GYO, 1) .Resize(, 13).Value = Range("a2").Resize(, 13).Value .NumberFormatLocal = "yyyy/m/d" End With (弥太郎)
(弥太郎)さん だめでした。やはり22/4/2007の結果です
With Cells(GYO,1) .Resize(,13).Value = Range("a2").Resize(,13).Value Range("a2").Copy .PasteSpecial xlPasteValuesAndNumberFormats End With これでは? (seiya)
元のセルの書式設定を変更しておく とかではダメなのですかね?
(HANA)
HANAさん 「書式設定と値の挿入を逆にする」、ということですよね? この場合、同じ日付シリアル値なので、前後しても同じ結果だと思うのですが... すでに提示したコードで解決するはずなのですけどね... ちょっと、困惑? (seiya)
seiyaさん セルの書式をコードで制御するのではなく 先にセルに書式を設定しておく ・・・と言うつもりだったのですが、同じ事ですかね? 「.Value」となっているので、値貼り付け(書式は貼り付かない) と同じ動きかと思ったのですが。
あ、A列に日付以外は入らないので、事前の書式変更が可能 と言う前提です。
(HANA)
私が最後に提示したコードでだめな場合は、わけが分からなくなりますね...
HANAさんがおっしゃっておられることは
Columns("a").NumberFormat = "yyyy/m/d"
でフォーマットしておいて、値を挿入、ですよね? 多分、同じだと思うのですが... (seiya)
(seiya)さん できました ほっ でももう一つ a2セルがアクティブのまま終わります、escキーをおせば済む事なんですが
End With の前に
.Select Application.CutCopyMode = False
ということですか? (seiya)
う〜〜ん、「コードで制御せず」のつもりですが 書くとすればその様になると思いますので 結果としては同じかも知れませんが まあ、過程が違うと言うことで。
あ・・・解決しましたね。良かったです。 (タイミング悪くてごめんなさい。)
(HANA)
いえいえ、HANAさん 試してみる価値はあると思います。 (seiya)
(seiya)さん 長いこと付き合ってもらってありがとうございます ついでなんですが、
.PasteSpecial xlPasteValuesAndNumberFormats の意味って
(hana)さんも ありがとうございました
形式を選択して貼り付け − 値と数値の書式 をコードにしたものです。 (seiya)
(seiya)さん本当にありがとうございました。m(__)m
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.