• ベストアンサー

エクセル:VBAで月変わりで、自動でシートを選択したい

scheimpflugの回答

回答No.1

はじめまして。 VBAのThisWorkBookのところに下記を記入すれば OKです。 Private Sub Workbook_Open() Dim lMonth As Long lMonth = Month(Date) Excel.Sheets(lMonth).Select End Sub

yastaro
質問者

お礼

はじめまして。scheimpflugさん。まずは、ご回答いただきましたことを心からありがとうございます。 ただ、いただいたコードの運用ができませんでした。おそらく私が初心者であるための理解不足のせいかと思います。お許しください。

関連するQ&A

  • エクセル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にもかけるのでしょうか? ご指導お願いいたします。

  • エクセルVBAで、行削除⇒別シートに自動入力をしたい

    いつもお世話になります。よろしくご指導お願いします。 VBA初心者です。最近随分皆様に助けていただいています。尚、業務の関係でお助けください。 エクセルで名簿形式のデータベースシートがあります。 (山田太郎 ○○市○○町 911-1234 ・・・) 例えば、この山田さんが解約したり死亡されたりすると「行削除」をします。そのとき、別シート(シート名「解約者台帳」)に自動的に削除した行の全データをもっていきたいのです。 ★解約者台帳のフィールドは、元シートと基本的に同じですが、A~AG列のデータが必要。AH列以降のデータは不要です。 解約者台帳に追加していく(新しい行=何も入力されていない行への自動入力)等のVBAのイメージを含めて、私の力ではやはりさっぱりです。どうかまたまたお助けください。お待ちしています。

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

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

  • エクセルワークシートからVBA自動作成の方法

    エクセル2007を使用しています。 エクセルワークシートからVBAを自動作成する方法を探しています。 添付のエクセルワークシート01の4行目以降を1行づつ処理し、以下のVBAを自動作成したいです。 〔作成希望VBA〕 Public Sub aaa() sample = (1111, 2222, 3333) test = A End Sub Public Sub bbb() sample = (4444, 5555, 6666) test = B End Sub Public Sub ccc() sample = (7777, 8888, 9999) test = C End Sub 以上よろしくお願いします。

  • 自動でシートを作成するには?

    ブックを開くと自動でシートを作成したいのですが、日付が21日になったら新しくシートを作成するようにするにはどうしたらよいでしょうか? 使用しているのはエクセル2003です。 VBAを使用し、月が替わるたびにシートを作成するようには出来たのですが、21日になるたびに作成する方法がわかりません。 VBA初心者です。 よろしくお願いいたします。

  • VBAでエクセル内の情報を他のアプリケーションへ自動入力したいです

    業務効率を上げるために、VBAでエクセル内の情報を他のアプリケーションに自動入力させたいです。 入力する情報は、複数の項目があり、固定されています。 できれば、ワンクリックですべての入力フォームに自動入力させたいです。 これらのことは、VBAで実現可能なのでしょうか? また、実現可能な場合、どのようにすればよろしいのでしょうか? VBAを始めたばかりで何が出来て何が出来ないか、あまりわかっておりません。 VBAを習熟している方にとっては、簡単に質問であるかも知れませんが、どうぞご教授ください。 よろしくお願いいたします。

  • シート選択をVBAでやる方法について教えてください。

    シート選択をVBAでやる方法について教えてください。 4月から順に12シートあります。その中で 先月、今月、来月の分の3シートをまとめて選択したいのです。 11月12月1月2月3月とシートは並んでいて 今は1月なので12月、1月、2月のシートを選択という感じです。 これは可能でしょうか? 最終的にはコピーして新しいブックに張付ける予定です。 EXCEL2003です。宜しくお願いします。

  • エクセル:ブックを開くとき、自動で任意のシートで開きたい。

    よろしくお願いします。 ある、エクセルファイル(ブック)に、 「月」、「火」、「水」、・・・(←「 」内はシート名)、というシートをあらかじめ、作っています。 そのエクセルファイルを開くとき、そのファイルを開く当日が、 月曜日ならば、「月」、 火曜日ならば、「火」、 水曜日ならば、「水」・・・ というように、自動でそのシートを出すように開きたいのです。 マクロだと思いますが、ご指導をお願いいたします。

  • 評価シートをエクセルで作ってほしいといわれ、困っています。

    エクセルについての質問です。 (当方初心者といっても過言でないレベル) 前任者から新たに業務を引き継ぎ、社員の業務における目標と その評価を行うシートをエクセルで作っています。 例えば、セルA1に1つ目の目標、A2に2つ目の目標といった 形で、全部で目標数は4つあり、1つ目の目標に対してセルB1に 50%、B2に10%、B3に20%、B4に20%(合計100%) と固定のウエイト設定がなされています。 ただし、決められた4つの目標以外に、社員は自分の意思で目標を 2つまで追加することができます。(しなくても良い) 例えばセルA5に1つ目標を追加し(全部で目標が5つ)、その追加 目標のウエイトをB5に20%と入力した場合に、もともとあるB1 からB4までの4つのウエイトの比率(5:1:2:2)を変える ことなく、自動的に計算させ、その合計が100%になるように したいのです。 (目標1のウエイトが40%、以下目標2が8%、目標3が16%、 目標4が16%、新たに追加した目標5が20%で合計が100%) B5に任意の数字(%)を入れるとB1~4の%がそれぞれ自動的に 計算され表示できるようにするにはいったいどのような計算式を 考えればよいのでしょうか。 分かりづらい文章かもしれません。申し訳ございませんが よろしくお願いします。

  • エクセルVBAでシート名を変更する方法を教えて下さい。

    いつもお世話になっています。 エクセルである月ごとの表を作っています。 1シートひと月で、翌月はそのシートをコピーして新しいシートを作り、 使用しています。 VBAでシートをコピーすることはできたのですが、 その名前を翌月にする方法がわかりません。 シート名は単純に4月分なら「4」 5月分なら「5」です。 4月のシートをコピーすると、シート名が 「4(2)」となりますが、 これを自動で「5」とするにはどうしたら良いのでしょうか?