検索
タグクラウド
プロフィール
yoshimatsuさんの画像
yoshimatsu
60過ぎのおっちゃんです。同じ年齢層の中ではそこそこパソコンが使える方だと自負しています。今まで会社等で学んだ知識等を紹介していきたいと思います。

広告

posted by fanblog

2017年11月16日

ExcelVBAで車庫証明発行アプリ

┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━[PR]━┓
 高速・多機能・高安定レンタルサーバー『エックスサーバー』
 ─────────────────────────────────
・月額900円(税抜)から、大容量200GBからの高コストパフォーマンス
・安定のサーバー稼働率99.99%以上
・高速性を重視し、最新20コアCPU(Xeon E5シリーズ)+192GBメモリ
 +RAID10を採用!
・幅広いバージョンのPHPやSSHに対応!
・初心者でも安心の24時間365日メールサポート!
 ─────────────────────────────────
https://px.a8.net/svt/ejp?a8mat=2NR2G3+DG1FLE+CO4+5ZU2B
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛




マイクロソフトアクセスの記事はこちら

人気ブログランキングへ



にほんブログ村 IT技術ブログ ソフトウェアへ
にほんブログ村

車庫証明へのコピー

保管場所の使用者欄でF6に住所・J6に部屋番号・M7に電話番号ですね。

保管場所の契約者欄はF9に住所・J9に部屋番号・M10に電話番号ですね。

それから、枠番号がN4になり、使用者と契約者の関係がP6〜P9になります。

その際、4その他を選択された場合、関係性をQ10にコピーする必要があります。


こちらで使用しているものは先ほど記載したように、オーナー様と賃貸者の

両方の住所・電話番号欄があり、「使用期間」も入力できるようになっています。

後、入力欄には部屋番号と駐車場?bフ両方を入力するようにしております。

両方ともデータベースがあり、両方の整合性が取れない場合はエラーとなります。

車庫17.png

上記のように記載しました。

VBA上で関数を使用する場合は上記のように、

値 = WorksheetFunction.VLookup(検索値,検索範囲, 列数)という記載になります。

現時点、賃貸に関する考慮はされておりません。

Dim n As Long

Dim tbl As Range

Set tbl = Sheets("名簿").Range("a2:g29")

n = UserForm1.TextBox1.Value

Sheets("車庫証明").Range("m7").ClearContents

Sheets("車庫証明").Range("m10").ClearContents

Sheets("車庫証明").Range("j6").ClearContents

Sheets("車庫証明").Range("j9").ClearContents

Sheets("車庫証明").Range("f7:g7").ClearContents

Sheets("車庫証明").Range("f10:g10").ClearContents

Sheets("車庫証明").Range("n4:r4").ClearContents

Sheets("車庫証明").Range("p6:p9").ClearContents

Sheets("車庫証明").Range("q10").ClearContents

Sheets("車庫証明").Range("p6") = 1

Sheets("車庫証明").Range("p7") = 2

Sheets("車庫証明").Range("p8") = 3

Sheets("車庫証明").Range("p9") = 4


Sheets("車庫証明").Range("F6").Value = WorksheetFunction.VLookup(n, tbl, 3, False)

Sheets("車庫証明").Range("j6").Value = WorksheetFunction.VLookup(n, tbl, 1, False)

Sheets("車庫証明").Range("m7").Value = WorksheetFunction.VLookup(n, tbl, 5, False)

Sheets("車庫証明").Range("F9").Value = WorksheetFunction.VLookup(n, tbl, 3, False)

Sheets("車庫証明").Range("J9").Value = WorksheetFunction.VLookup(n, tbl, 1, False)

Sheets("車庫証明").Range("m10").Value = WorksheetFunction.VLookup(n, tbl, 5, False)

Sheets("車庫証明").Range("n4").Value = WorksheetFunction.VLookup(n, tbl, 4, False)

If UserForm1.OptionButton1 = True Then

Sheets("車庫証明").Range("F7").Value = WorksheetFunction.VLookup(n, tbl, 2, False)

Else

Sheets("車庫証明").Range("F7").Value = WorksheetFunction.VLookup(n, tbl, 6, False)

End If

Unload UserForm1

Sheets("車庫証明").Select

上記のように記載しました。

初めの下の部分ですが、ここで変数宣言しております。

通常は頭で宣言するのですが、今回はここでの宣言になっております。

Dim n As Long

Dim tbl As Range

Set tbl = Sheets("名簿").Range("a2:g29")

n = UserForm1.TextBox1.Value

「n」はユーザーフォームのテキストボックスなので、入力された部屋番号となります。

「tbl」は名簿範囲を変数として設定しています。

次に「ClearContents」というのがいくつか並んでいます。

以前一度同じような記述をしましたが、若干範囲を変更しましたので、

以前の部分を削除して、今回クリアを実施しましょう。

次に

Sheets("車庫証明").Range("F6").Value = WorksheetFunction.VLookup(n, tbl, 3, False)

というよく似た内容のものが並んでいます。

これはVlookup関数を使用して部屋番号から抽出した

「住所」「部屋番号」「電話番号」を車庫証明シートにコピーしているところです。

部屋番号は「=n」でもいいのですが、一応Vlookup関数にしております。

あと駐車場?b焜Rピーしております。

VBAで関数を使用する場合はこのように、

WorksheetFunction.VLookup(検索値,検索範囲,列番号)という記述になります。


If UserForm1.OptionButton1 = True Then

Sheets("車庫証明").Range("F7").Value = WorksheetFunction.VLookup(n, tbl, 2, False)

Else

Sheets("車庫証明").Range("F7").Value = WorksheetFunction.VLookup(n, tbl, 6, False) End If

上記の部分ですが、契約者と使用者の関係が「本人」の場合は使用者に

契約者の名前をそのままコピーします。

違う場合は使用者(賃貸者)の名前をコピーします。


Unload UserForm1

Sheets("車庫証明").Select

上記の部分ですが、ユーザーフォーム1を閉じて、「車庫証明」のシートを

表示する命令です。

「フォームを閉じる」なので「close」でいいように思えますが、

フォームを閉じる場合は「Unload」を使用してください。




100GB大容量無制限レンタルサーバー、ドメインも激安【X2】
https://px.a8.net/svt/ejp?a8mat=2NR2G3+DEUKDU+CO4+TWE03

この記事へのコメント
コメントを書く

お名前:

メールアドレス:


ホームページアドレス:

コメント:

※ブログオーナーが承認したコメントのみ表示されます。

この記事へのトラックバックURL
https://fanblogs.jp/tb/6974624
※ブログオーナーが承認したトラックバックのみ表示されます。

この記事へのトラックバック
Build a Mobile Site
スマートフォン版を閲覧 | PC版を閲覧
Share by: