2016-09-24 18 views
0
Range("a2") = 123.45 
Range("a2").FormulaR1C1 = "=TEXT(R[-1]C,""#.00"")" 

'FormulaR1C1'と相対参照 'R [-1] C'の代わりに他のコードを使用できますか?FormulaR1C1形式以外のVBAコードにExcel関数を埋め込む方法はありますか?

+1

あなたは何を達成しようとしていますか?例を示してください – user3598756

+0

コードは、セルに数値があり、それがテキストに変換されると言っています。しかし、出力は重要ではありません。重要なのは、このコードで絶対参照(相対参照の代わりに)を使用できるかどうかです。 –

+0

絶対/相対参照のみが[-1]から角括弧を削除するだけの場合。しかし、私はそれがあなたが必要とするものだけであることができないように感じます... – user3598756

答えて

0

それはTEXTに結果を変換していないが、これを試してみてください。

With ActiveSheet.Cells(1, 2) 
    .Value = .Offset(0, -1).Value 
    .NumberFormat = ("0.00") 
End With 
+0

しかし、ここでOPの質問の 'Range(" a2 ")= 123.45'がありません。しかしそれは明らかではない。だから私は明確化のために尋ねたのです – user3598756

+0

申し訳ありませんが、コードのタイプミスはすべての狂気の根源でした。この質問は、解決されたとみなされ、閉じられたものとみなされることがあります。助けてくれてありがとう。 –

0

私の質問は、予想される結果に到達した内の1つのステップでした。次のステップは、ループ内で絶対参照を使用する方法を見つけることでした。ただし、コード内の絶対参照など: 範囲( "a2")= 123.45範囲( "a2")FormulaR1C1 = "= TEXT(R [-1] C"、 "#。00" ")" は、変数を使用して結果を得るループでは管理が難しいです。いくつかのR & Dの後に私が思い付いた: Sheet1.Cells(2,1).Formula = "= TEXT((a1)、"#。00 "") "は動作します。 私はループに合わせてR1C1の式を操作する方法を探し続けます。

+0

ループなしで、A2 = TEXT(A1)、B2 = TEXT(B2)、C3 = TEXT(C3)のような範囲を最終的な目標として設定しようとしていますか? – jamheadart

関連する問題