• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:このコードのどこが違ってますか?)

コードの違いと日本語訳

このQ&Aのポイント
  • Windows XP Home EditionとExcel 2002を使用している場合、左表のコードは問題なく動作しますが、右表のコードは問題があります。具体的には、'---- '間の箇所を変更する必要があります。また、'(y * myCol)'の日本語訳は不明です。
  • 左表のコードは、行方向にコードが正しく実行されるため、問題ありません。右表のコードでも同様の実行を行いたい場合、'---- '間の箇所を変更する必要があります。また、'(y * myCol)'の日本語訳は不明です。
  • このコードでは、Windows XP Home EditionとExcel 2002を使用して左表と右表の2つのサブルーチンが定義されています。左表の場合、指定された範囲のデータを行方向にコピーして貼り付ける処理が行われます。右表の場合も同様の処理を行いたい場合、一部のコードを変更する必要があります。具体的には、'---- '間の箇所を変更します。なお、'(y * myCol)'の日本語訳は不明です。

質問者が選んだベストアンサー

  • ベストアンサー
  • kmetu
  • ベストアンサー率41% (562/1346)
回答No.2

base.Offset(myCol, 0).Resize(,x).Copy base.Offset(,myCol * x) と言った感じで行の数値を省略して ,x などとしてでもいけるでしょう。 y * myCol は単に掛け算してるだけだと思います。 左表の.Offset(y * myCol)は列の数値を省略している書き方です。 本来はOffset(RowOffset, ColumnOffset) です

oshietecho-dai
質問者

お礼

早速のご回答、誠に有難うございました。 バッチリでした。

その他の回答 (1)

  • kmetu
  • ベストアンサー率41% (562/1346)
回答No.1

base.Offset(myCol, 0).Resize(RowSize,x).Copy base.Offset(RowOffset,myCol * x) にしてみてはいかがでしょう RowSize RowOffset には適切な数値を入れてください。