• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ExcelのVBAについて。)

ExcelのVBAについての質問

kkkkkmの回答

  • kkkkkm
  • ベストアンサー率65% (1620/2459)
回答No.3

> シート1の入力(数値になるか文字列になるかまだ決めていません。)を様式を決めて、文章の羅列を文書にする感じで一覧情報にします。 > シート1が数字のみならシート2は漢字とかの文字。 > わりとポピュラーな形式だと思いますが、 どの世界でポピュラーなのか知りません 広辞苑第五版 ポピュラー【popular】  一般向き。大衆的。また、普及しているさま。  広く親しまれる洋風の歌や音楽。「―‐ミュージック」「―‐ソング」 クラシック 結局何をやりたいのか分かりませんが Application.EnableEvents = False が先頭にないのに Application.EnableEvents = True があっても無意味だと思います。 Application.Goto ActiveSheet.Range("A3"), True Gotoはアクティブではないシートのセルを選択する場合に使うみたいですが、ActiveSheetに指定してるのはなぜでしょう。スクロール的なもの? ActiveSheet.Range("A3").Select との違いはスクロールだけのように思えます。 Range("H3").Select ActiveCell.FormulaR1C1 = "5" Formulaはセルに数式をセットする場合に使います。値ならValueで 以下のように一行ですませます。"5"のように文字で指定してもエクセルは数値として扱います。 Range("H3").Value = 5 Range("E3").Select Selection.ClearContents は Range("E3").ClearContents 一行で

seijiadb07
質問者

お礼

GoTo文はあまり好ましくない言いがありますが、確かにエラーが多い書きのこの記述に先の文は好ましくないとは思います。改善出来るようならば、適切な文に置き換えたいです。。

seijiadb07
質問者

補足

Excelの範疇であるかは差し置いて、ソフトウェアとしてはわりとポピュラーではないかと思います。 初心者として、使えるコードは使う。その上で重大な問題があるならば、初心者としても直すのは当然です。 今の記述だと一文で修正できる範囲かも知れませんが、おっしゃいの点は教えて欲しい部分にはあまり関係ないのではないかと思います。 十分に確認して、修正したいとは思いますが、入力(シート1)→シート移動(シート2)→入力(シート1)…の手順には遠いような気がします。 もしくは、シート移動せずに、、記述がより難解に高度になりそうな。。 今さらかも知れませんが、言葉足らずは差し置いて、しかし手順は最低限必要と思います。 ご協力お願いします。。

関連するQ&A

  • ExcelのVBAについて。

    ExcelのVBAについて。 普通は数値を表形式にまとめて図表化しますが、図表化した値から数値の表形式に直せないでしょうか? 例えば、図表化する時に入力項目をファイルに落とすとかして、のちに再集計するなど。あくまでExcelで完結したやり方としてです。よろしくお願いします! 質問としては、転記の基本などもご指導頂ければ有り難いです。入力、転記については、先に表形式にすべきと酷評もあるかと思いますが、よろしくお願いします。

  • エクセルvba初心者です・・・

    エクセルvba初心者です・・・ シート1にあるひとつのセルをコマンドボタンを押した時にそのセル内の文字列をシート2にかいていくようなプログラムをつくりたいです。 例えば シート1のセルに文字入力→”田中”→登録ボタンおす→シート2のセルA1にはいる シート1のセルに文字入力→”竹山”→登録ボタンおす→シート2のセルA2にはいる                  ・                  ・                  ・ というようになるコードわかる方いたら教えてください。おねがいします。

  • エクセルVBA(マクロ)の書き方で・・・

    VBA初心者です。よろしくお願いします。 エクセルマクロで、次のような関数を入力して、 =IF(月!$D4=稼動シート!$B$2,月!B4,"◆") 自動記録をさせると コードは、次のような「絶対参照セル」(←表現あっていますか?)の表示になります。 『Range("C4").Select ActiveCell.FormulaR1C1 = "=IF(月!RC4=稼動シート!R2C2,月!RC[-1],""◆"")"』 わたしのスキルでは、この記述コードを参考に別のコードを書こうにも理解と応用が効きません。 そこで、VBAコードにも 『Range("C4").Select  =IF(月!$D4=稼動シート!$B$2,月!B4,"◆")』 と単純に書いてはいけないのでしょうか?また、どうすれば実際のシートで入力した関数と同じような表現でVBAにもかけるのでしょうか? ご指導お願いいたします。

  • 急!!Excel VBA 転記マクロを教えて下さい

    Excel VBA超初心者です、 急ぎ作らなければならない資料があり、ご助力願います。 次の様な転記するアクションをコマンドボタンに設定したいです。 Sheet1の列A(先頭セルA2)に入力したデータを、 追加した(入力間違い等を除き、保存した)データ分だけ Sheet2の列B(先頭セルB3)の最終行から転記させていく。 列Aに入力したデータは、並び替えをするので (この分は、今回のVBAに含みません。入力・転記後、Sheet1で普通に並び替えをします。) 列Aと列Bのデータの順番が異なる。 以上です。 どうぞ宜しくお願いします。

  • エクセルVBA及び関数

    初心者です。お教えお願いします エクセル2003です 空白行及び0をなくしたいのですが(C列を入力された時点で自動でE列のようにしたい) 関数の場合及びVBAのシートコードを両方教えていただけないでしょうか VBAのコードは勉強の為です Sheet1    A    B     C     D     E     F 16          文字A        文字A 17          文字B        文字B 18            0         文字C 19          文字C        文字D 20            0         文字E 21          文字D        文字F      22      23          文字E 24 25          文字F 文字はC16~C80まで入っております B16~E80までのセルのみで行いたいのですが 他の場所は関数やグラフ等がすでに入ってますのでいじりたくありません E16~をフォームのコンボボックスのリストにしようと思ってます よろしくお願いましす

  • VBA教えてください

    VBA初心者です A1~A5までのセルは色は白色のセル A6.A7セルの色は赤色の背景のセルです A1~A5までのセルは B~Dのセルに数値を入力するが A6.A7のセルのB~Dまでのセルは 結合してさらに結合したセルに「停止」 の文字を入力します。 私がVBAでやりたいのは 赤い背景のセルだけに反応して 自動でB~Dのセルを結合し 停止の文字を自動入力できるようにしたいです コードを書いてくれると めちゃくちゃ助かります 回答お願いします。

  • Excel VBA データの転記

    Excel2003を使用しています。 Sheet1のB1セルとSheet2のB1セルのデータが一致したら、Sheet2のB1セル~E1セルのデータをSheet1のF1セル~Iセルに転記するというコードを書いています。 Sheet1のデータ最終行を取得して、上記の条件を満たさなかったSheet2のB1セル~E1セルのデータをSheet1のデータ最終行の1行下から順に転記するという内容を追加したいのですが、転記先の指定の仕方が悪いのか、希望通りになりません。 どなたか一例を示していただけないでしょうか? スマホからの投稿で、実際に書いているコードを記載できず、分かりづらくて申し訳ないのですが、よろしくお願いします。

  • エクセルシートの塗りつぶしをVBAでやるには?

    エクセルのセル塗りつぶしについて(VBA) いつもお世話になっています。 エクセルシートで、任意のセルに数値を入力したとき、入力したセルから右側に向けて、その数値分、自動で塗りつぶすようにしたいのですが、どのようにすれば良いのでしょうか? 色は何でも構いません。 画像添付します。

  • Excel VBAについての質問です

    シート1のセルA1で文字が入力されたら3つ下へ(A4へ)、A4で文字が入力されたら3つ下(A7へ)…としたいのですが、どうすれば良いのですか? VBAを使う方法と使わない方法をそれぞれ、もしくは一方を教えて頂きたいのですが、よろしくお願いします。

  • エクセルでデータを蓄積するVBA

    蔵書管理用の一覧表です。 エクセルでデータ入力用のフォームは作ることができたのですがシートに転記するVBAをどのように書けばよいのか分かりません。 データは次々に増えていきます。 A列には番号を入力せずに自動的に番号が増えていくようにしたい。 3番まで入力済みのあとは、自動で「4」と番号が付与されて、下の行に転記されるようにしたい。 VBA初心者です。よろしくお願いします。 A    B      C          D 番号 分類     図書名      冊数 1   文庫本    日本の歴史   3 2   週刊誌    新潮        1 3   月刊誌    月刊ゴルフ    1