![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
Aシートのセルをコピーして、Bシートのセルに数値貼り付けとゆう自動化しているマクロがあります。
ただ、貼り付け先で、小数点6桁にしなくてはならないのですが、貼り付けの際に可能でしょうか
その処理はround関数とかで可能でしょうか?
サンプルコードを教えて頂けませんでしょうか!すみません
例
Aシートに、A1セルに=11/3とゆう数式があると、Excelは表示上、3.67777777777と数値になります。
このA1セルをコピーし、BシートのB1セルに
3.677777(少数点6桁)で数値貼り付けしたいです。
No.3ベストアンサー
- 回答日時:
元の前のコードが不明なので、取り合えず参考にどうぞ!
--------------------------------------------------------------------
Sub Sample()
Dim 行 As Long
Dim 列 As Long
Dim 行終 As Long
Dim 列終 As Long
With Sheets("Sheet1").UsedRange
行終 = .Rows(.Rows.Count).Row
列終 = .Columns(.Columns.Count).Column
End With
Sheets("Sheet2").Select
Cells.ClearContents
With Sheets("Sheet1")
For 行 = 1 To 行終
For 列 = 1 To 列終
If .Cells(行, 列).Value <> "" Then
If IsNumeric(.Cells(行, 列).Value) Then
Cells(行, 列).NumberFormatLocal = "0.000000"
Cells(行, 列).Value = Int(.Cells(行, 列).Value * 1000000 + 0.5) / 1000000
Else
Cells(行, 列).NumberFormatLocal = .Cells(行, 列).NumberFormatLocal
Cells(行, 列).Value = .Cells(行, 列).Value
End If
End If
Next
Next
End With
End Sub
--------------------------------------------------------------------
※ 数値とエクセルが数として捉えたものは、ご指摘のように表示形式と値を変更して貼り付けます。
※ その他の物は元の表示形式で値を貼り付けます。
※ Sheet2 は貼り付ける前にクリアしています。不要ならば「Cells.ClearContents」を削除して下さい。
No.6
- 回答日時:
課題かなにかは知りませんが、
1.予め貼り付け先の表示形式を小数点以下6桁にしておく。
2.マクロを用いて、貼り付ける先の表示形式を小数点以下6桁に指定する。
等の選択肢はないのですか?
例
A:貼り付ける値を入れた変数または元のセル.valueなど
cells(行,列)=A
cells(行,列).NumberFormatLocal = "0.000000_ "
のような使い方
ただし、このように表示形式を設定した場合には、ほかの桁で数値を表示する場合に再設定または「標準」に戻す必要があるかもしれません。
No.5
- 回答日時:
初心者がこれからマスターして行くつもりならマクロ記録ですることをお勧めします。
手でやれる事なら微修正で組み込みできますから。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
一行おきにコピーするマクロが...
-
エクセルでマクロを使った特定...
-
Excelの非表示列も含めてコピー
-
[Excel VBA]空白セル以外に連番...
-
EXCELにて複数列を同条件(色)...
-
Excel VBAで日にちを入力して線...
-
エクセル VBA 指定の範囲内をコ...
-
最終行から上10行をコピーする...
-
特定の桁数を抽出
-
2つのセルを交互に切り替え表示...
-
エクセルVBA 並び替え セルの...
-
エクセルの関数について(日付で...
-
エクセルについて教えてくださ...
-
エクセル マクロ 貼り付け先が...
-
【エクセル】無作為抽出
-
Excelのマクロで不規則に連番を...
-
商品の単価と個数を入力するだ...
-
エクセルの複数のセルを一括で...
-
EXCELで○ヶ月を○年○ヶ月に変換...
-
Excelで同じセルに箇条書きをし...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EXCELにて複数列を同条件(色)...
-
一行おきにコピーするマクロが...
-
Excelの非表示列も含めてコピー
-
シート保護の状態で行の追加を...
-
エクセルで表示された値だけ行...
-
エクセルで行挿入した際、自動...
-
エクセルで空白以外のセルの値...
-
エクセル VBA 指定の範囲内をコ...
-
[Excel VBA]空白セル以外に連番...
-
エクセル マクロ 貼り付け先が...
-
エクセルの関数について(日付で...
-
エクセルVBA 複数列をコピーす...
-
特定の桁数を抽出
-
【マクロ】IF複数条件の上限に...
-
エクセルで反転コピー
-
行数が不規則な一週間ごとの合...
-
エクセルのマクロ、AVERAGEIFを...
-
【初歩】エクセルでのマクロ(...
-
Excelのマクロで不規則に連番を...
-
エクセルで縦に長い表を印刷
おすすめ情報
ありがとうございます。
四捨五入で良いです。6桁にできればよいので。
すみません。
いまそのマクロは手元にはないので来週にならないと提示ができず、、、。