2016-06-15 22 views
0

私はこのようなループのために、細胞を埋めるためにしようとしている:充填細胞

For i = 1 To Target 
    Range("C" & i & ":C" & i).Formula = "='Sheet1'!A" & i & "/" & "'Sheet2'!B" & i" 
Next i 

そして、私は数式バーにそれを見てみたい:

=」シート1 '!A1 & "/" & 'のSheet2'!B1

=' シート1' !A2 & "/" & 'のSheet2'!B2

...

残念ながら、それは機能しません。このコードは結果

For i = 1 To Target 
    Range("C" & i & ":C" & i).Formula = "='Sheet1'!A" & i 
Next i 

この罰金をするが、これは私にとっては十分ではありません:私はそのような最初の部分のみをしようとした場合

= 'Sheet1のA1'

= 'シート1! 「!B1

...私の延期のコードが間違っている何

?あなたが連結した文字列に二重引用符で問題が発生した場合

+0

このようなことは以前にサイトで聞かれたことはありません... –

答えて

0

あなたは

Range("C" & i & ":C" & i).FormulaR1C1 = "=Sheet1!RC1 & ""/"" & Sheet2!RC2" 
+0

RC1はどういう意味ですか?私の例のようにiteratorを "it" iteratorで反復する方法は? – Twi

+0

Rは行とC列を意味していますが、これを行うと R&iとC2は機能しません。 – Twi

+0

あなたの例では、a1とb1、次にa2とb2などを使用していましたが、私の解決策(c1、c2など)は – brettdj

0

を試みることができる、私はあなたができる限り多くを削除しsugest。 1文字はASCIIコード番号Chr functionで参照できます。 /文字はあなたが範囲でインクリメントする必要はありません47

Dim i As Long, target As Long 

With ActiveSheet 
    target = .Cells(Rows.Count, "A").End(xlUp).Row 
    For i = 1 To target 
     .Range("C" & i).Formula = "='Sheet1'!A" & i & Chr(47) & "'Sheet2'!B" & i 
    Next i 
End With 

ある式が適切に構築されています。 xlA1またはxlR1C1参照スタイルのいずれかを使用できます(xlReferenceStyle enumeration参照)。

Dim i As Long, target As Long 

With ActiveSheet 
    target = .Cells(Rows.Count, "A").End(xlUp).Row 
    'xlA1 style 
    .Range("C1:C" & target).Formula = "='Sheet1'!A1/'Sheet2'!B1" 
    'xlR1C1 Style 
    .Range("C1:C" & target).FormulaR1C1 = "='Sheet1'!RC1/'Sheet2'!RC2" 
End With 

xlR​​1C1スタイルはRange.FormulaR1C1代わりのRange.Formulaが必要であることに注意してください。

+0

誰も働いていません。 !問題は、私は、私が式ルックアット場合、セルに表示することを、次のとおりです! =「Sheet1のA1」&「/」&「のSheet2を」B1 そして、私は値を見れば、セルのルックスそのようなもの: 105/12。 105 Sheet1 A1セルから/は文字で、12はシート2からのものB2 これらのソリューションでは、_&_および_ "_文字はセル式に書き込まれないため、VBA解釈その文字。 – Twi