• ベストアンサー

エクセルで名簿を下のように作成します。マクロを使って番号5番から10番

エクセルで名簿を下のように作成します。マクロを使って番号5番から10番まで(ここは自由に入力)と入力して、表から5番から10番の番号と、名前を白い字にして見えなくしてしまいたいのですがどのようにすれば いいでしょうか。固定した番号と名前を削除するのはできるのですが、削除開始と削除終了の番号を変えてのやり方がわかりません。ご教授お願いします。

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

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.1

こんばんは! フライング気味のような感がありますけど・・・ 表がどのような配置か判らないので勝手に↓のように2列の単純な表でのVBAにしてみました。 一例です。 単にNOと名前の文字色を表示しない場合のVBAは Sub test1() Dim i, j, k, L As Long k = InputBox("開始番号を入力してください。") L = InputBox("終了番号を入力してください。") For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row For j = k To L If Cells(i, 1) = j Then Range(Cells(i, 1), Cells(i, 2)).Font.Color = xlNone End If Next j Next i End Sub 削除の件も出ていたので余計なお世話かもしれませんが・・・ 削除のコードもやってみました。 Sub test2() Dim i, j, k, L As Long k = InputBox("開始番号を入力してください。") L = InputBox("終了番号を入力してください。") For i = Cells(Rows.Count, 1).End(xlUp).Row To 2 Step -1 For j = k To L If Cells(i, 1) = j Then Rows(i).Delete (xlUp) End If Next j Next i End Sub 今回の場合はあくまで連続している数値を処理する方法です。 もし飛び飛びのNOでの処理をしたいのであれば他の方法を考える必要があると思います。 この程度ですが、 参考にならなかったらごめんなさいね。m(__)m

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセルで名簿を作成します。たとえばマクロを使って番号5番から10番ま

    エクセルで名簿を作成します。たとえばマクロを使って番号5番から10番まで(ここは自由に入力)と入力して、表から5番から10番の番号と、名前を白い字にして見えなくしてしまいたいのですがどのようにすれば いいでしょうか。固定した番号と名前を削除するのはできるのですが、削除開始と削除終了の番号を変えてのやり方がわかりません。ご教授お願いします。

  • エクセルマクロで番号指定して,白字にする方法

    エクセルで名簿を作りマクロを使って必要のない番号と名前を白字にしたいのですが、セルに開始番号と終了番号を入れて実行するマクロがよくわかりません。特に変化する範囲指定の方法です。次の文を参考に ご教授お願いします。 Worksheets("sheet1").Activate 開始 = Range("d3").Value 終了 = Range("e3").Value For カウント = 開始 To 終了 Range("q2").Value = カウント Range("○○○ ").Select Selection.Font.ColorIndex = 2 Application.ScreenUpdating = False Next Worksheets("sheet1").Activate End Sub ”d3”には出席番号が入ります。( ○○○ )のところがよくわかりません。ご教授お願いします。

  • excelで名簿を

    excelで名簿を作りたいのですが..... (1)登録順に1から始まる数字が割り振られています。(”登録番号”と呼ぶことにします) (2)A列から順に A列「登録番号1~30」、B列「1~30の人の名前」、C列「1~30の人の生年月日」が入るとします。 (3)登録番号が31~60のデータは、D列「登録番号31~60」、E列「31~60の人の名前」、F列「31~60の人の生年月日」に入るとします。 (4)2ページ以降も同様にしてA~C列には登録番号61~90の人のデータがD~F列には登録番号91~120の人のデータが入るとします。 ここでたとえば30番目の人の名前と生年月日のデータを削除したときに31番目以降のデータが一つずつずれるようにはできますか? 30番目には31番目の人の名前と生年月日が、60番目には61番目の人の名前と生年月日がくるといった具合です。データ(セル?)を追加するときも同様です。 データ(セル?)を削除、追加したときに2ページ目以降の印刷開始位置や開始番号(登録番号のことです)→(2ページ目なら61、3ページ目なら121 がずれないようにしたいのです。 どなたかよろしくお願いします<(_ _)>       

  • エクセルのマクロでこんなことできますか?

    エクセルで毎月のシフト表を作っています。 1.「名前」「開始時刻」「終了時刻」などを入力できるようにしたカレンダーのような表を作成。 2.入力データから、時間数を名前別に集計する。 以上の2つのマクロを作りました。 ここで、1.のカレンダーの表の「名前」は職員の名前だけ入れば良いので、名前の入力欄のセルに入ったら、リストボックスのようなものから選択できるようにできたら使い勝手が良いかな?と思います。 入力ミスを防ぐことと、タイプの手間を省く目的ですが、そういうことってできますか? 何かいい方法がありましたらお教えください。

  • エクセル2003で名簿に通し番号を入力したいのですが、番号をつけても並

    エクセル2003で名簿に通し番号を入力したいのですが、番号をつけても並べ替えをすると番号がばらばらになってしまいます。簡単な方法はありますか。よろしくお願いします。

  • エクセルで顧客名簿  通し番号とその例外

    エクセルで顧客名簿を作っています。 Aに顧客の通し番号 Bにお客さんの名前を入れるとして、 でも二度目以降のお客さんのときには (つまり前と同じ名前を入力したとき)、 前と同じ通し番号の後ろに -1 とか -2 とかつけて 何回リピートしてるかわかるようにしたいんですけど、 どうしたらいいでしょうか? ちなみに通し番号自体も、 B以降になにか入力されたら 自動的に入るようにしたいです。 よろしくお願いいたします。

  • エクセルのマクロで範囲指定をセルに番号を入れて、範囲指定したセルの字の

    エクセルのマクロで範囲指定をセルに番号を入れて、範囲指定したセルの字の色を白にして消したいのですが、番号を入れるマクロがわかりません。マクロに記録でA2からB12までのセル内の字の色を白 にする方法は Sub 字を消す() ' ' 字を消す Macro ' ' Range("A2:B11").Select With Selection.Font .ThemeColor = xlThemeColorDark1 .TintAndShade = 0 End With End SubでできるのですがD3に開始番号、E3に終了番号を指定する方法がわかりません。ご教授お願いします

  • エクセルで作成した名簿

    エクセルで作成した名簿があります。 名前・住所・電話番号・性別等々書かれているのですが…。 その中から、男性だけを取り出したいのですがどうしたよいでしょうか? 男の人だけ、名前だけを同じシート内の別の列に抜き出したいのです。 中には重複している人もいて、重複している人はいくつあっても1つだけ取り出したいのですがどうしたらよいでしょうか?

  • エクセルで、名簿管理をしたいのですが、

    エクセルで、名簿管理をしたいのですが、 シート1が名簿の一覧表で、 名簿の1番目の人の個票がシート2、名簿の2番目の人の個票がシート3 ・・・ というように、一覧表と個々人の状況がシートごとに管理できないかと考えています。 よい方法があれば、教えてください。 また、ネット上にテンプレートがあればそれも教えてください。 もしくは、これはアクセスでないとできませんか? オフィスソフトに詳しくないもので・・・ よろしくお願いします。

  • 名簿を番号で管理したい

    ある施設の日々の利用管理表を作ろうと思っています。あらかじめ利用者名簿の一覧はそれぞれの利用者に通しの番号をつけて名簿を作ります。  日々の管理画面に当日の利用者を入力していくのですが、そのときに、番号の入力だけの作業でその横の欄に設けようと思っている氏名、年齢等の情報を名簿から抽出してきて表示することは可能でしょうか? EXEL2003です。

専門家に質問してみよう