Results of 1 - 1 of about 7932 for VLOOKUP (0.002 sec.)
- [[20100927083734]]
- #score: 3345
- @digest: 8e3da82df0da623cd864f350f9dcf611
- @id: 51485
- @mdate: 2010-09-27T07:09:11Z
- @size: 8131
- @type: text/plain
- #keywords: 算売 (41941), 年売 (23844), 上: (22187), 予算 (19373), 算比 (18553), worksheetfunctino (15497), 算表 (12650), 上予 (11419), は: (11033), 比は (9419), 前年 (9007), )
") (7972), 表") (7677), 売上 (7143), (集 (7075), (g (6981), 年比 (6794), currentregion (5260), worksheets (4932), 日現 (4743), vbcrlf (4708), 計) (4615), ウッ (4386), 本日 (3284), ッシ (2978), 昨日 (2927), 独覚 (2736), メニ (2563), vlookup (2453), variant (2333), ニュ (2300), 索範 (2297)
- 『マクロでVLOOKUP』(g-g)
AシートのA1に今日の日付があります。BシートのB1:B31に売上げがあります。 C1:B31に前年売上げD1:D31に予算売上げがあります。 これをマクロでVLOOKUPで検索して本日の売上、前年売上、予算売上をブックを 開いた時にエクセルのメッセージボックスで本日の売上は・・、前年売上は・・、予算売上は・・とだすようにしたいのですが教えてもらえませんか?ホームボタンというのですか?グレーの四角いボタンを押して本日の売上は・・、前年売上は・・、予算売上は・・ でもかまいませんので教えてください。宜しくお願いします。 ---- こんにちは 質問にそのまま答えると、 Private Sub Workbook_Open() Dim k As Variant Dim z As Variant Dim t As Variant With WorksheetFunction k = .VLookup( _ Worksheets("A").Range("A1"), _ Worksheets("B").Range("A1").CurrentRegion, _ 2, 0) z = .VLookup( _ Worksheets("A").Range("A1"), _ Worksheets("B").Range("A1").CurrentRegion, _ 3, 0) t = .VLookup( _ Worksheets("A").Range("A1"), _ Worksheets("B").Range("A1").CurrentRegion, _ 4, 0) End With MsgBox "本日の売上: " & k & vbCrLf & _ "前年売上 : " & z & vbCrLf & _ "予算売上 : " & t End Sub こんな感じで。 ThisWorkbook モジュールにセットしてブックを開きなおすとメッセージが表示されます。 (ウッシ) ---- k = .VLookup( _ Worksheets("A").Range("A1"), _ Worksheets("B").Range("A1").CurrentRegion, _ 2, 0) この部分の2, 0の意味を教えてもらえませんか? Worksheets("B").Range("A1").CurrentRegion, _ のA1はA1より下に永遠に検索すると言う意味でしょうか? (g-g) ---- こんにちは 2, 0 は普通に「Vlookup」のヘルプ見て貰えれば分かりますよ。 列番号と検索の型です。 Range("A1").CurrentRegion はセルA1から空白行、空白列の無いデータの有る範囲の事です。 Worksheets("B")のA列には検索対象の日付が入っていると仮定してます。 (ウッシ) ---- ヘルプではわからない部分を補足。 ワークシート上では論理値(TRUE、FALSE)の個所に数値がある場合、「0」をFALSE、「0以外」をTRUEと変換して使います。 (独覚) ---- Private Sub Workbook_Open() Application.AskToUpdateLinks = False MsgBox "リンク先ファイルよりデーター吸い上げに成功しました。", vbInformation Range("A1:G1").Activate Dim k As Variant Dim z As Variant Dim t As Variant Dim g As Variant With WorksheetFunction k = .VLookup( _ Worksheets("メニュー(集計)").Range("C35"), _ Worksheets("予算表").Range("A4").CurrentRegion, _ 4, 0) z = .VLookup( _ Worksheets("メニュー(集計)").Range("C36"), _ Worksheets("予算表").Range("A4").CurrentRegion, _ 10, 0) t = .VLookup( _ Worksheets("メニュー(集計)").Range("C35"), _ Worksheets("予算表").Range("A4").CurrentRegion, _ 3, 0) g = .VLookup( _ Worksheets("メニュー(集計)").Range("C36"), _ Worksheets("予算表").Range("A4").CurrentRegion, _ 11, 0) End With MsgBox "本日の予算売上: " & k & vbCrLf & _ "昨日までの予算比は : " & z & vbCrLf & _ "前年売上は : " & t & vbCrLf & _ "昨日までの前年比は : " & g Sheets("メニュー(集計)").Range("h33") = Format(ThisWorkbook _ .BuiltinDocumentProperties("Last Save Time").Value, "m月d日 h:mm") End Sub 色々と回答ありがとうございます。こんな風にしました。ですがエラーになりますなぜでしょうか? (g-g) ---- こんにちは どこでエラーになりますか? エラーメッセージの内容は? 検索値が違うのは何故ですか? Worksheets("予算表")を開いて、 Sub test() Range("A4").CurrentRegion.Select End Sub とすると、意図する範囲が選択されますか? (ウッシ) ---- ブックをひらいた時に実行時エラー1004 WorksheetFunctinoクラスのViookuoプロパティを取得できませんが出ます。 検索値が違うのは何故ですか?とは?(g-g) ---- こんにちは Worksheets("メニュー(集計)").Range("C35") Worksheets("メニュー(集計)").Range("C36") で違ってますよね? 「実行時エラー1004 WorksheetFunctinoクラスのViookuoプロパティを取得できません」 って事は検索範囲に当日の日付が無いって事です。 Private Sub Workbook_Open() Dim k As Variant Dim z As Variant Dim t As Variant On Error Resume Next With WorksheetFunction k = .VLookup( _ Worksheets("A").Range("A1"), _ Worksheets("B").Range("A1").CurrentRegion, _ 2, 0) z = .VLookup( _ Worksheets("A").Range("A1"), _ Worksheets("B").Range("A1").CurrentRegion, _ 3, 0) t = .VLookup( _ Worksheets("A").Range("A1"), _ Worksheets("B").Range("A1").CurrentRegion, _ 4, 0) End With On Error GoTo 0 MsgBox "本日の売上: " & k & vbCrLf & _ "前年売上 : " & z & vbCrLf & _ "予算売上 : " & t End Sub のようにすればエラーは出ません。 検索値と検索範囲が年月日「yyyy/mm/dd」で入力されていて、当日が検索範囲にある事を確認して下さい。 (ウッシ) ---- 確かにウッシさんの書いたコードのまま新規ブックで試したらできました。 が実際にはWorksheets("B").Range("A1").CurrentRegion, _ 2, 0) この部分のRange("A1")がA4から2010/9/1ですのでA4にしましたがこれだとエラーになります。 どうしてでしょうか?(g-g) ---- こんにちは 先に書いた、 Worksheets("予算表")を開いて、 Sub test() Range("A4").CurrentRegion.Select End Sub はやってみましたか? 意図した検索範囲でない場合はコードを書き換える必要が有ります。 (ウッシ) ---- Private Sub Workbook_Open() Dim k As Variant Dim z As Variant Dim t As Variant Dim g As Variant On Error Resume Next With WorksheetFunction k = .VLookup( _ Worksheets("メニュー(集計)").Range("c36"), _ Worksheets("予算表").Range("A1").CurrentRegion, _ 4, 0) z = .VLookup( _ Worksheets("メニュー(集計)").Range("c35"), _ Worksheets("予算表").Range("A1").CurrentRegion, _ 10, 0) t = .VLookup( _ Worksheets("メニュー(集計)").Range("c36"), _ Worksheets("予算表").Range("A1").CurrentRegion, _ 3, 0) g = .VLookup( _ Worksheets("メニュー(集計)").Range("c35"), _ Worksheets("予算表").Range("A1").CurrentRegion, _ 11, 0) End With On Error GoTo 0 MsgBox "本日の売上予算は: " & k & vbCrLf & _ "昨日現在の売上予算比は : " & z & vbCrLf & _ "前年売上は : " & t & vbCrLf & _ "昨日までの前年比は : " & g End Sub ウッシさん見直したら上のコードで出来たのですが前年比が80%と出したいのですが0.8と出てしまいます。これを80%と出るように修正してもらえませんか?お願いします (g-g) ---- Format関数を使ってはどうでしょうか? "昨日までの前年比は : " & Format(g,"0%") (独覚) ---- 独覚さん回答ありがとうございます。"昨日現在の売上予算比は : " & z & vbCrLf & _ も指導してもらえませんか?応用法がいまいちわからなく・・すみません宜しくお願いします。(g-g) ---- g→Format(g,"0%")なので "昨日現在の売上予算比は : " & Format(z,"0%") & vbCrLf & _ としてみてください。 (独覚) ---- 独覚さんウッシさん出来ました。今回は大変お世話になりました。ありがとうございました。(g-g) ---- 問題がおこりましたので質問したいのですが・・・今日の年月日を2010/9/27と入力だと検索しますが =NOW()を使い年月日を出すと検索できませんでした。どうしたら回避できますか?宜しくお願いします。 (g-g) ---- NOW()は日付だけではなく時間も含んでいます。 「2010/9/27」と入力した場合、時間まで表示させると「2010/9/27 0:00:00」となります。 対して「NOW()」の場合「2010/9/27 15:52:12」等となるため一致しません。 =TODAY() で行ってみてください。 (独覚) ---- 独覚さんまた面倒見てもらいましてありがとうございました。(g-g) ...
-
https://www.excel.studio-kazu.jp/wiki/kazuwiki/201009/20100927083734.txt
- [detail]
- similar
PREV
NEXT
Powered by
Hyper Estraier 1.4.13, with 97049 documents and 608241 words.
訪問者: