次の方法で共有

マクロが正常に実行されない。

Anonymous
2019-05-17T05:58:32+00:00

パソコン初心者です。エクセルの勉強をしているのですが、マクロの記録をして実行してもうまくいきません。記録したとおりに動いてくれないのです。最初にやった時にはうまくいっていたのですが、ある日突然マクロが正常に実行されなくなりました。

何が原因なのでしょうか。教えていただけませんでしょうか。お願いします。

開発者テクノロジ | Visual Basic for Applications

ロックされた質問。 この質問は、Microsoft サポート コミュニティから移行されました。 役に立つかどうかに投票することはできますが、コメントの追加、質問への返信やフォローはできません。

0 件のコメント コメントはありません

2 件の回答

並べ替え方法: 最も役に立つ
  1. Anonymous
    2019-05-18T15:05:56+00:00

    最初にやった時にはうまくいっていたのですが、ある日突然マクロが正常に実行されなくなりました。

    正常に実行とは、エラーが出るのですか?実行されている?実行されていない。(何の処理もしない)もう少し具体的に情報を頂きたいところですね。原因は、色々考えられ、詳しい情報を頂いても特定、改善が出来るか分かりませんが。

    想定を限定して返信します。

    ある日突然、それまで正常に記録されたマクロが実行されたと言う事なら、以下の作業を行っていませんか?

    シート構成やセル配置(構成)などを変更していませんか?

    自動記録のマクロは、実際に行われた作業(手順、実施内容)を記録してモジュールという場所に書き込まれます。

    下記は、実際に自動処理というシートのセルA1に1セルA2に2を入力した記録です。

    Sub Macro1()

        Sheets("自動処理").Select    '---シート名 自動処理の シートを選択

        Range("A1").Select      '---A列1行目を選択

        ActiveCell.FormulaR1C1 = "1"  '---選択されているセルに1を入力

        Range("A2").Select      '---A列2行目を選択

        ActiveCell.FormulaR1C1 = "2" '---選択されているセルに2を入力

    End Sub

    見てわかると思いますが、"自動処理"や”A1”と記載されています。つまり、シート名を変更するとエラーなどが、

    対象セルを配置変更すると思った動きになりません。(マクロから見れば、記録されている通りに実行されています)

    ”マクロ処理される対象シートで、よく見かけるやってはいけない後作業、表を見やすくする為、A列を挿入してしまう」これやるとアウト!”、また、シートのコピーを作り作られたコピーシートで実行されると思っている。。など

    構成変更などの場合、対処として、新しい(変更された)表組みでマクロを改めて記録し直すのが最も早いと思います。

    コード自体を修正する事もできますが、一定の知識と経験が必要だと思います。

    マクロ記録で作業を自動化する

    --以下抜粋--

    これは重要なことですが、マクロを記録するとき、マクロ レコーダーはほとんどすべての動作を記録します。順番を間違えた場合、たとえば、あるボタンを意図せずにクリックしてしまった場合、マクロ レコーダーはその動作を記録します。この解決策は、全体を記録し直すか、VBA コード自体を修正することです。そのため、マクロを記録するときは、自分が使い慣れているプロセスを記録することが最善となります。一連の動作を支障なく記録できれば、マクロを実行したとき、マクロが効率的に動作します。

    この回答は役に立ちましたか?

    1 人がこの回答が役に立ったと思いました。
    0 件のコメント コメントはありません
  2. Anonymous
    2019-05-17T06:00:40+00:00

    そりゃあ、原因はいろいろあると思います。全てをここで解説するのは実質不可能です。

    本屋へ行って適当な解説本を買って勉強してください。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません