|
▼ハチ さん:
ハチさんからおしえていただいた通り
>With Worksheets("Sheet2")
> .Range("B2", .Range("H65536").End(xlUp)).Clear
>End With
を使用しましたが、実はSheet2には罫線を設定したり、一行目にラベルを設定しているのでそれまでクリアされてしまいました。
この処理をしてから罫線を引く処理と値を入れる方法を取った方が早いのでしょうか?
またコピーの件ですが、
>i = Worksheets("Sheet1").Range("I1").Value
>Worksheets("Sheet2").Range("B2:H" & i + 1).Value = _
>Worksheets("Sheet1").Range("A1:G" & i).Value
ハチさんの上記の手法でやってみると確かにコピーはできたのですが、値の書式設定が変わってしまい無理でした。
そのコピーのデータには日付や時間のデータが入っていますので、それが標準になってしまいましたので、コピーした後表示形式を変更する必要があります。
また数値データの件ですが、
>>Worksheets("Sheet2").Select
>>Range("H1:H" & i).Select
>>Selection.NumberFormatLocal = "\#,##0_);[赤](\#,##0)"
ハチさんのおっしゃるとおりCurrency型に変換しています。
すいません数値データではありません。書き方を間違えました。
Currency型に変える方法は上記のやり方が通常なのでしょうか?
もうちょっとスマートなやり方はありますか?
よろしくお願いします。
|
|