2017-04-22 29 views
1

に数式を適用します。基本的には、使用範囲全体の列Aに数式を適用するだけです。これを変更すると、これは必要に応じて実行されますか?は、私はこの構文を実行しようとするたびに、私は</p> <blockquote> <p>タイプ不一致</p> </blockquote> <p>エラーを取得していますすべて使用される範囲

Dim wSheet As Worksheet: Set wSheet = Sheets("Master") 
Dim lr As Long: lr = wSheet.Cells(wSheet.Rows.Count, "A").End(xlUp).Row 
Dim form 

form = "=SUBSTITUTE(TRIM(D2),"-","")" 

With w.sheet 
    .Range("A2:A" & lr).FormulaR1C1 = form 
End With 

答えて

1

D2はxlA1 sytaxであり; xlR1C1構文ではありません。 D2にリレーショナルアドレスを提供したり、xlA1構文で.Formulaを使用するRC[3]を使用してください。引用符で囲まれた文字列内で引用符を二重にする必要もあります。

With wSheet 
    lr = .Cells(.Rows.Count, "D").End(xlUp).Row 
    form = "=SUBSTITUTE(TRIM(D2),"" - "", TEXT(,))" 
    .Range("A2:A" & lr).Formula = form 
    form = "=SUBSTITUTE(TRIM(RC[3]),"" - "", TEXT(,))" 
    .Range("A2:A" & lr).FormulaR1C1 = form 
End With 

ところで、TEXT(,)""と同じです。

+0

'' ''の代わりに 'TEXT(、)'を使用する利点はありますか? – YowE3K

+0

'" ""を入力する必要はありません。私は物事を混乱させるだけです。 – Jeeped

+0

私はそれがどんな理由も良いと思う。 :D – YowE3K

関連する問題

 関連する問題