
x.Range("c" & 200 & ":c" & 300).FormulaR1C1 = x.Range("c" & 150).FormulaR1C1
この式は 正しく番地をずらしてくれますが
x.Range("h" & 200 & ":ba" & 300).FormulaR1C1 = x.Range("h" & 150 & ":ba" & 150).FormulaR1C1
列を複数とると 番地が 飛びます(一つ置きのような)
そも、無理なんでしょうか? それとも、考え、記述にミスがある?
よろしくどうぞ
No.3ベストアンサー
- 回答日時:
横から失礼します。
kigoshiさんが提示されている画像は、HA150:BA150の値は、計算式ではなく文字列(aaa0001~aaa00045)
が設定されているのではないでしょうか。
その場合は、実行結果は、 kigoshiさんが提示されている画像の通りになります。
一方、質問者の方のシートの内容は、HA150:BA150には計算式が設定されていると推測されます。
(質問者の方が計算式か文字列かを明記していないので、正確には不明ですが・・・)
上記を確認するために、以下のような設定を行って、マクロを実行します。
A1:A300にa00001~a00300の文字列を設定する。
B1:B300にb00001~b00300の文字列を設定する。
C150に=A150を設定する。(a00150が表示される)(添付図の赤線で囲んだ箇所)
H150に=A150を設定する。(a00150が表示される)(添付図の赤線で囲んだ箇所)
I150に=B150を設定する。(b00150が表示される)(添付図の赤線で囲んだ箇所)
この状態で、
① x.Range("c" & 200 & ":c" & 300).FormulaR1C1 = x.Range("c" & 150).FormulaR1C1
② x.Range("h" & 200 & ":ba" & 300).FormulaR1C1 = x.Range("h" & 150 & ":ba" & 150).FormulaR1C1
を実行する。
①の結果は、以下のようになる。(添付図の青線で囲んだ箇所)
C200にa00200が表示される。
C201にa00201が表示される。
C202にa00202が表示される。
以降同様。(これは期待する結果である)
②の結果は、以下のようになる。(添付図の緑線で囲んだ箇所)
H200にa00200が表示される。
H201にa00202が表示される。(a00201を表示したい)
H202にa00204が表示される。(a00202を表示したい)
以降同様。(これは期待する結果でない)
I列も同じ現象が発生する。(これも期待する結果ではない)

お説の通りです。コピーは文字列でなく、セル計算式です。で、グリーンの列のようになる・・・が質問内容です。
なぜ列を複数とると、そうなるのか??です。
2列なら、一つ置き、3列なら3飛びなら、分からくないですが、どのような列数でも、一つ置き。???
仕様と言われればそれまでですが、まあ、バグですかねえ、
No.4
- 回答日時:
.FormulaR1C1(相対参照)ではなく、.Formula(絶対参照)にすれば、期待する結果が得られますが、それではだめなのでしょうか。
x.Range("h" & 200 & ":ba" & 300).Formula = x.Range("h" & 150 & ":ba" & 150).Formula
.FormulaR1C1を使用する前提での質問でしたら、無視してください。
No.2
- 回答日時:
Sub hhh()
Range("h" & 200 & ":ba" & 300).FormulaR1C1 = Range("h" & 150 & ":ba" & 150).FormulaR1C1
End Sub
このコードを実行すると図のようになりますが。

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 工学 CR発振回路 C1=C2=C=0.001【uF】 R1=R2=R3=16【kΩ】 R4は出力電圧が正 2 2023/05/10 19:13
- Visual Basic(VBA) 2つのシートの任意のセルの番号が一致したら、一致した行をコピーする VBA 2 2023/06/19 20:48
- 物理学 写真の問題について質問なのですが、解説を見る限りc1とc2の電気量は等しくないように思えます。 しか 4 2023/07/01 21:41
- Excel(エクセル) 表示形式、文字列セル(列)に数式を入力するには マクロ 1 2022/09/18 10:53
- Excel(エクセル) エクセルで書式設定とフィルタの組み合わせでうまく行かないのですが 4 2022/10/07 10:02
- Visual Basic(VBA) エクセルファイルのデータ転記について 2 2024/02/17 02:10
- Excel(エクセル) 楽天マーケットスピード RSSでエクセルに書き出す 1 2023/09/29 22:31
- Excel(エクセル) エクセルVBAでセルに表示されているとおりの数値を取得したい(時間の計算結果) 1 2022/03/30 17:52
- C言語・C++・C# numpyスライス機能を使った数値計算 2 2023/05/08 16:01
- Visual Basic(VBA) データのある範囲を選択するVBAについて 2 2022/09/03 00:20
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
一昨日、重大なミスをしてしま...
-
異動して3ヶ月、毎日が辛いです
-
低レベルなミスの多い新人は見...
-
仕事でとんでもないミスをして...
-
就職して二ヶ月少々。ミスが怖...
-
新人社会人です。入って3週間が...
-
言いやすい人のミスにはキツく...
-
今日仕事休み、明日職場で怒ら...
-
今日とあるお店で買い物をしま...
-
信じられないミスをして逃げる...
-
バイトを始めて2ヶ月ミスばかり...
-
真面目に仕事でミスばかりしま...
-
スシローのバイト初出勤でめち...
-
昼休み中に仕事のミスを注意し...
-
ミスを隠す癖。 私には、ミスを...
-
倉庫のピッキング作業をしてい...
-
レジの操作について
-
いくら好みの女性部下でも、仕...
-
仕事が忙しいからミスした、出...
-
仕事でミスばかりで辛いです…
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
異動して3ヶ月、毎日が辛いです
-
一昨日、重大なミスをしてしま...
-
低レベルなミスの多い新人は見...
-
言いやすい人のミスにはキツく...
-
信じられないミスをして逃げる...
-
ミスして信用ないから辞めるは...
-
今日とあるお店で買い物をしま...
-
ミスを隠す癖。 私には、ミスを...
-
レジの操作について
-
就職して二ヶ月少々。ミスが怖...
-
今日仕事休み、明日職場で怒ら...
-
スシローのバイト初出勤でめち...
-
倉庫のピッキング作業をしてい...
-
仕事ができず嫌われている自分...
-
バイトを始めて2ヶ月ミスばかり...
-
しんどいです。 私の仕事ミスで...
-
ミスが多い時期って誰にでもあ...
-
a型作業所はミスが多くスピード...
-
仕事ミスした次の日行きたくな...
-
入社2年目でミスが続きます
おすすめ情報
自己レスですが
For i = 8 To 19
nitiasi.Range(Cells(st, i), Cells(en, i)).FormulaR1C1 = nitiasi.Range(Cells(150, i), Cells(150, i)).FormulaR1C1
Next i
とりあえず、こんな感じで済ませたのですが、なんかなあ??
仕様ですか??