新規記事の投稿を行うことで、非表示にすることが可能です。
2016年12月21日
エクセルで入場券を作りましょう。
マイクロソフトアクセスのまとめ記事はこちら
人気ブログランキングへ
2枚目以降の入場券と印刷
赤枠内で「nyu = nyu + 9」とあります。
これは入場券の2枚目に行くためには9行先だから+9にしています。
If nyu = 62 Then
Sheets("入場券").PrintOut
nyu = 8
End If
nyu = 62というのは6枚目まで行くとnyuは53になります。
それに+9すると62なので6枚入力した段階(nyuが62)で1回印刷するという意味です。
nyu = 8は印刷後再度1枚目から入力していくために1枚目である8行目に戻しています。
タグ:エクセル,VBA,入場券
2016年12月20日
エクセル(Excel)VBAで入場券を作ってみよう。
マイクロソフトアクセスのまとめ記事はこちら
人気ブログランキングへ
入場券のVBA
VBAの内容ですが
kai = 2 ・・・会員一覧の最初は2行目なので「2」に設定
nyu = 8 ・・・入場券の最初の名前の位置は8行目なので「8」に設定
If Sheets("会員一覧").Cells(kai, 6) = "" Then ・・・2行目の発券日に記載があるかどうか
Sheets("入場券").Cells(nyu, 5).Value = Sheets("会員一覧").Cells(kai, 2)
・・・発券日に記載がない場合は入場券の1枚目の名前欄に最初の名前を入力
If Sheets("会員一覧").Cells(kai, 4) = "幼児" Then
・・・会員一覧の年齢欄に「幼児」となっている場合は
Sheets("入場券").Cells(nyu, 14).Value = Sheets("会員一覧").Cells(kai, 4) & "・保護者必要"
・・・幼児の幼児の場合は年齢欄に「幼児・保護者必要」と記載
ElseIf Sheets("会員一覧").Cells(kai, 4) = "小*" Then
・・・小学生の場合
Sheets("入場券").Cells(nyu, 14).Value = Sheets("会員一覧").Cells(kai, 4) & "・保護者必要"
・・・小学生も保護者必要
Else
Sheets("入場券").Cells(nyu, 14).Value = Sheets("会員一覧").Cells(kai, 4)
・・・上記以外は年齢コピー
End If
End If
上のVBAの流れは分かると思います。
会員一覧の名簿の1行目(エクセルシート上は2行目)の発券日を確認して、
発券日が記載されている場合はこの「If」は終了して一番下の「End If」まで飛び終了します。
発券日が記載されていない場合は次の行へ進み、名簿の1番目の名前を入場券の1枚目にコピーします。
次に年齢欄を見ていき、「幼児」の場合は、入場券の年齢欄に「幼児」+「・保護者必要」と記載する。
小学生の場合は学年と保護者必要となる。
幼児と小学生以外は年齢がそのまま記載される。
という流れです。分かりますか。
これが基本のVBAです。
入場券が1ページの6枚あるので同じようなVBAを6回書けばいいのですが、
それではあまりにも芸がないので、「繰り返し」(ループ)を使ってみましょう。
以前For〜NextとかDo〜Loopとか説明したと思います。
繰り返す回数が決まっている場合はFor〜Nextが良いのですが、
今回の場合は会員数が増える場合も想定するとDo〜Loopの方が
条件的には好ましいと思います。
別にFor〜Nextで繰り返す回数を多めに見積もって使用しても問題ないです。
私は比較的For〜Nextが好きなので良くこちらを利用します。
頭にDo While Sheets("会員一覧").Cells(kai, 1) <> ""を追記して
End Ifの後に
kai = kai + 1
Loopを追記しました。
Cells(kai, 1) <> ""は条件式で会員一覧の1列目の会員番号が記載されているところまで
ループするということです。
「””」は空白とか未記入とかという意味です。
但し上のVBAを実行すると入場券の1枚目だけが変化するだけで2枚目以降に入力されません。
タグ:エクセル,入場券
2016年12月19日
エクセル(Excel)VBAで入場券を作ってみよう。
マイクロソフトアクセスのまとめ記事はこちら
人気ブログランキングへ
入場券発券の流れ
・最初に発券日に日付の記載があるかどうか。
記載があれば発券済ということでパスする
・申込日に日付の記載があるかどうか
・申込日に記載があれば「氏名」「年齢」をコピー、
発券日に本日の日付を入力していく。
・入場券に6名分の記載が終われば一旦印刷する。
・入場券の氏名欄と年齢欄を消去する
・次の6名分の発券
・申込者が無くなればその時点で印刷して終了する
上記の流れで作って行きたいと思います。
VBAの記載ですが「標準モジュール」を作って登録してもいいですし、
「発券」ボタンを作ってそのボタンに登録してもいいと思います。
今回は入場券シートに「発券」ボタンを配置しましょう。
「開発」タブのActiveXコントロールから「コマンドボタン」を選択してシート状に配置します。
名前を「発券」にしましょう。
「発券」ボタンをダブルクリックするとVBA画面が立ち上がります。
Private Sub CommandButton1_Click()の下にVBAを書いて行きます。
まずは「変数」の宣言をしたいと思います。
「変数」として使用するのは
・会員一覧シートの行変数。
・入場券シートの行変数
上記のように
Dim kai As Integer '会員一覧の行変数
Dim nyu As Integer '入場券の行変数
と宣言します。「‘」の後はコメント部分なのでプログラムには影響ありません。
このようにコメントを残しておくと後で見直す場合に分かりやすいです。
特に大掛かりなVBAになると、一体ここでどのような処理をなんのために
しているのか分からなくなります。
私もマメにコメント残す癖をつけるように意識しています。
タグ:エクセル,VBA,入場券
2016年12月18日
エクセル(Excel)VBAで入場券を作ってみよう。
マイクロソフトアクセスのまとめ記事はこちら
人気ブログランキングへ
エクセルで入場券発行
以前職場で入場券の発券アプリを作りました。
最初にエクセルで作成しましたが、そのころはエクセルに関する知識が乏しくて、
発券済分の処理がうまく行かず、使い勝手が良くなかったのでアクセスで
作り替えました。
しばらくアクセスで運用していましたが、アクセスも印刷設定で思うようにいかず
再度エクセルで作り替えるという結果になりました。
全く同じものはアップ出来ないですが、何かの参考になればと思うので、
VBAを使用した簡単な入場券発券システムを作ってみたいと思います。
以前にも記載したと思いますが、VBAの書き方というのは色々あります。
ここでは本当に初歩的なレベルで記載していこうと思っています。
ある程度のレベルの方でしたら「もっと簡単に出来るのに」とか
「もっとまとめてしまえばいいのに」とか思われるでしょうが、
とにかく分かりやすく初歩的なレベルでという前提で
記載していきますので宜しくお願い致します。
まずどのような入場券なのかというと下記のような架空の入場券を作ってみました。
上記のような内容で、A4シートに6枚取れるようにします。
実際に職場でアクセスを使用して作ったときはA4シートで
10枚取れるように配置しました。
ただカットする際に券と券の間にスペースがあり、カットするのに手間がかかる。
エクセルだとスペースなしで12枚取れるのではないかという同僚からの
意見もありエクセルに戻しました。
上記もスペースなしで6枚取れるように配置しております。
今度は参加者の情報です。
上記のように「会員番号」「氏名」「年齢」「申込日」「発券日」という
項目があります。
年齢で「小2」とか「幼児」とあるのは小学生以下に関しては
保護者同伴になります。
ですから年齢欄に「保護者必要」と記載します。
申込日が未入力のところは申し込みが無かった場合です。
本来の物はもう少し項目が増え、券の種類・入場料もあります。
また、通年でも使用できるように申込日は年月日で記載して申込日が
本年以外は発券しないという仕組みになっています。
イメージとしては「会員一覧」の申込日が入力済で発券日が
未記入の方に対して入場券を発券していきます。
タグ:エクセル,VBA,入場券
2016年12月17日
エクセル(Excel)のコピー貼り付けについて
マイクロソフトアクセスのまとめ記事はこちら
人気ブログランキングへ
コピー・貼り付けについて
貼付け時に上記のような貼り付けオプションのメニューが出ますね。
「全部」なのか、「値」だけなのか、「数式」だけなのか、「行列を入れ替える」のか、
「書式」だけなのか、「リンク」なのかということです。
上のメニューの下に「形式を選択して貼り付け」というところを選択すると下のような画面になります。
ここでも貼付けの内容が選択できます。
貼り付けオプション
コピー・貼り付けするときに表示される「貼り付けオプション」ですが、
便利ですがどちらかというと邪魔になる場合が多いですね。
表示させないようにする方法です。
「ファイル」タブの「オプション」を選択し、「詳細設定」をクリックします。
「切り取り、コピー、貼り付け」のところに「コンテンツを貼り付けるときに
【貼り付けオプション】ボタンを表示する」のチェックを外してください。
2016年12月15日
エクセル(Excel)で折り返して全体表示する方法
マイクロソフトアクセスのまとめ記事はこちら
人気ブログランキングへ
上のようにA列の幅が決まっていて、文字数が多い場合、はみ出しますね。
ホームタブの「折り返して船体を表示する」をONすると下のようになります。
自動的に行幅が広がり、途中で折り返して全体が見えるようにしてくれます。
これも意外と利用する機会が多いですね。
┏━[PR]━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
WordPressに特化したレンタルサーバー『wpXレンタルサーバー』
─────────────────────────────────
・最新の高性能サーバーマシン&高速ネットワーク
・大容量30GB、月額1,000円(税抜)〜
・リバースプロキシによるキャッシュなど、専用の高速システムを採用
・専用の管理ツールから簡単セットアップ
・過去14日間のデータの自動バックアップ機能
・独自ドメイン対応 & 1契約につき10個のWordPress運用が可能
─────────────────────────────────
https://px.a8.net/svt/ejp?a8mat=2NR2G3+DDNP6A+CO4+ZR2VN
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
2016年12月13日
エクセルで挿入と削除をしてみましょう。
マイクロソフトアクセスのまとめ記事はこちら
人気ブログランキングへ
挿入・削除
ちょっと現実的ではないですが、下の表で反転している部分(C10からC17)を削除したいと思います。
範囲選択して右クリックで「削除」を選択
ここで削除後の方向を聞いてきます。
今は「左方向にシフト」になっています。これでOKするとこの部分が削除され左に寄ります
下の図のようにDからGまでの部分が左に寄ってますね。
このように上方向にチェックを入れると上にシフトします。
「行全体」にすると10行目から17行目まで削除されます。
「列全体」だとC列が削除されます。
挿入の場合
挿入の場合も同じように右方向か下方向か聞いてきます。
下は右方向にシフトさせた場合です。
上の表では現実味は無いですが結構利用します。
便利です。
タグ:エクセル,挿入,削除
2016年12月11日
エクセル(Excel)シートを保護しましょう。
マイクロソフトアクセスのまとめ記事はこちら
人気ブログランキングへ
シートの保護について
上記の校閲から「シートの保護」を選択します。
上記のようにパスワードも設定できます。
この状態で「OK」すると、このシートに関しては改変が出来ません。
保護された状態になります。
またシート内でもここは変更しても良いですよ、というセルがある場合はどうするか。
A2を保護の範囲から省いてみましょう。
シートの保護をする前にA2を選択して右クリックからセルの書式設定を選択してください。
上記で「ロック」とありますね。
セルのデフォルトはロックにチェックが入っています。
一つ上の画像で「ロックされたセル範囲の選択」という項目と
「ロックされていないセル範囲の選択」とありますね。
この「ロック」というのは上の「ロック」のことです。
ここで一回「ロック」のチェックを外してください。
A2のロックを外してから、再度シートの保護を選択し「ロックされた範囲の選択」のチェックを外します。
この状態で「OK」します。
そうするとA2以外のセルは何もできなくなります(シート保護状態)。
A2だけ編集できます。
このように他の方も使用するような場合、ここだけ入力して他のセルは改変できないようにするために
「シートの保護」を使用します。
2016年12月10日
エクセルでショートカット・チェック・郵便番号
マイクロソフトアクセスのまとめ記事はこちら
人気ブログランキングへ
ショートカットキーで追加です。
「Ctrl」+「;」で日付入力
「Ctrl」+「:」で時刻入力
「Ctrl」+「方向キー」で違う条件のセルまで一気にジャンプする。
エクセルファイルの動作がおかしいとき
時々エクセルファイルがおかしくなる場合があります。
そのような時は「開いて修復する」で開く。
エクセルを開くときに「開いて修復する」を選択して「開く」と修復されて開きます。
「レ」(チェック)の表示の仕方
これは簡単なのですが「ちぇっく」と入力して変換すると
上記のように候補の中に「レ」(チェック)というのがありますね。
郵便番号から住所を表示する方法。
郵便番号から住所を入力・・・IME 右クリック「プロパティ」「詳細」「辞書」「郵便番号変換」に
ひらがな入力で100-0001と入力して変換すると「東京都千代田区千代田」と変換されます。
もし変換されない場合はIMEの設定で
今下のツールバー右側の「あ」の上で右クリックしました。
上記メニューの中から「プロパティ」を選択してください。
上記で「詳細」をクリック
「システム辞書」で「郵便番号辞書」にチェックが入ってますか?
入ってなければチェックを入れてください。
そしてOKしてください。
そうすると郵便番号から住所に変換できるようになります。
タグ:エクセル,技
2016年12月08日
エクセルで複数シートを並べて作業しましょう。
マイクロソフトアクセスのまとめ記事はこちら
人気ブログランキングへ
複数シートを並べて表示
通常エクセルは1つのファイルが立ち上がって一つのシートで作業していると思います。
しかし、同じファイル内の別シートを見ながら作業したい時はありませんか。
また別ファイルを見ながら作業したい時もありますね。
そのような時はどうすればいいのか。
同じファイルで別シートを開く場合をやってみましょう。
最初に「表示」タブから「新しいウィンドウを開く」を選択してください。
この段階で実は後ろに新しいウィンドウが開いてます。
「整列」というボタンを押すと下のようにウィンドウの整列というダイヤログが表示されます。
ここからどのように表示させるのか選択してください。一応「並べて表示」でOKします。
下のように同じものが並んで表示されましたね。
どちらかを別シートにしてみてください。
今右側を「相手先一覧」にしました。
このように並べて作業できれば非常に便利ですね。
これは別ファイルでも同じようなことが出来ます。
エクセルファイルを2つ開いた状態で「整列」を押せば同じような結果になります。
これは非常に便利ですよ。