- 締切済み
式だけのセルを範囲指定から除外したい
Excel365 windows10 使用の超初心者です。 (1) マクロ記載用A.xlsm データ用のB.xlsx C.xlsxでマクロ作成中です。 (2) データ用ブックのB.xlsx には、DシートとEシート(他に40枚)があります。 (3) Dシートには表には、B4からB33まで(4月21日から5月20日までの30個)のデータがあります。 (4)このデータを、行列を入れ替えてEシートの表に持っていきたいです。 (5)上のデータを貼りつけると時間かかる(=自分はそう思っている。)ので Eシートの表には最初から31個のセルに、=VLOOKUP(A58,計算データ,2,FALSE)関数が入れてあります。 (6)なのでDシートのデータが変わると、すぐにEシートの表も同時に変更されます。 (7)いまEシートを見ると、4月は30日しかないので、5月20日までは表示されていますが、次行のセルには関数式だけで、何も表示されていません。 (8)やりたいことは、この日付が4月21日~5月20日の行までを選択したいです。 (9)CurrentRegionでは、式だけの空欄の所も範囲指定されてしまいます。 何時間も試行錯誤しましたがお手上げです。よろしくお願いします。
- みんなの回答 (7)
- 専門家の回答
関連するQ&A
- 日付が表示されているセルのみ範囲指定したい
Excel2007でマクロ作成中の初心者です。 範囲指定がうまくいかない。 1)セルB30 =IF(A30="","",VLOOKUP(A30,表データ,2,FALSE)) セルB31 =IF(A30="","",VLOOKUP(A31,表データ,2,FALSE)) 以下略 というように、セルB30~B60まで関数が入っており、 以下のように表示されています。 1 9月21日 2 9月22日 以下略 〃 29 10月19日 30 10月20日 31 ←(ここのセルは日付表示されず空欄。 関数 =IF(A60="","",VLOOKUP(A60,表データ,2,FALSE))が入っている) 2)以下のコードを実行すると Sub 範囲を選択() Range("B30").CurrentRegion.Select Selection.Resize(Selection.Rows.Count - 1).Select Selection.Offset(1, 0).Select Selection.Resize(Selection.Rows.Count - 1).Select End sub 1から31行まで選択されてしまします。これを30行目まで、日付の表示あるセルのみ 選択したいのですが、どうすればよろしいでしょうか
- ベストアンサー
- Visual Basic
- シート名をセルに入力しこれを使って別ブックを参照
Excel2010を使用しています。 別のブックのあるシート内にある表からデータを取ってくる方法を教えて下さい。 ****前置き**** 例えば YYY.xlsx と ZZZ.xlsx という2つのブックがあるとします。 YYY.xlsxの内容 H1、H2、・・・、H9という名前の9つのシートがあるとします。 各シートには同じフォーマットの表があり、セルD10:P12に値が入っています。 ZZZ.xlsxの内容 1月 という名前のシートがあるとします。 シート1月の中に セルA1には H1 セルA2には H2 : セルA9には H9 という値が入っています。 ********本題******** ブック ZZZ.xlsx 内のシート 1月 のセルE1 に ブック YYY.xlsx 内のシートH1のセルD10の値を表示させる方法を教えて下さい。 ただし、シートの指定は、シート 1月 のセルA1内の値と一致するのシート名のセルD10の値を表示させたいと考えています。 ですので、例えば、セル A1 に H5 という値が入っていれば、セルE1には YYY.xlsx内のシートH5のセルD10を表示させるようにしたいです。 VLOOKUP関数とINDIRECT関数を使えばできるのでは?と思っていろいろ試しているのですが、上手くいかないのが現状です。 どうかよろしくお願いします。
- ベストアンサー
- Excel(エクセル)
- ExcelのMATCH関数の検査範囲の指定について
Excelで、指定した値の場所(行番号)を返すというのをMATCH関数を用いてやっているのですが、検査範囲の指定が上手く処理することができないので教えて下さい。 条件---------------------------------------------------------------------------------------------------------------- 2つのExcelファイル、DATA.xlsx と TEST.xlsx を用いる。 DATA.xlsx内に「B19」というシートが存在し、このシート内のB列にある"7777"という値が存在する行番号をTEST.xlsx内のセルに表示させる。 ----------------------------------------------------------------------------------------------------------------------- まず、 =MATCH(7777,[DATA.xlsx]B19!$B:$B,0) で正しい値が返ってくることは理解しています。 この式の中の、B19というシート名について、 この式が存在するシートと同じシートの適当なセル(ここではA33を使うことにします)にB19 という値が存在するとします。このA33のセルにある値を見て値を返す、何がしたいかといいますと、将来参照するシートがB19ではなく例えばB15であったり、B6とした場合、A33のセルの値を変更すればよいというものにしたいのです。 それで、 =MATCH(7777,"[TEST.xlsx]"&$A33&"!$B:$B",0) としてみたのですが、#VALUE!が返ってきます。 何処が間違っているのか?教えてください。 よろしくお願いします。
- ベストアンサー
- Excel(エクセル)
- (VBA一部使用中)手作業部分を減らしたいです・・
こんばんは、 EXCEL2010を使っています。 A.xlsm B.xlsm C.xlsm BOOK1.xlsx ~ BOOK10.xlsx(ファイルごとに行数はバラバラ、列数はA~Dで固定) というファイルがあり、すべて開いている状態です。 使用しているのはすべてSheet1のみです。 1.BOOK1.xlsxのA~D列を手動でコピー 2.A.xlsmのA~D列にBOOK1.xlsxのA~D列を手動で貼付け macro1というマクロを実行(A~E列をマクロでB.xlsmのA~E列にコピー&貼付け) 3.B.xlsmでmacro2というマクロを実行(I1~K1に数値が出現、マクロでコピー状態) 4.C.xlsmのB18~D18に手動で貼付け 5.1に戻ってBOOK2.xlsxで以下同じ作業 C19~D19に貼付け これをBOOK10.xlsxまで続けて保存 これをA,B,Cのファイルを使用したまま マクロを使って簡略化することは可能でしょうか? (例えばボタンを押したら1~4までを自動でやってくれるような) よろしくお願いいたします。
- ベストアンサー
- Excel(エクセル)
- 《エクセル》 マクロ-セルの範囲指定の式
いつもお世話になります。 2つお聞きしたいのですが、エクセルで、 ・「A列のデータのあるセル範囲のみを指定する」と、 ・「A列のデータのあるセル範囲の、隣(B列)のセルを指定する」 というマクロの式はどのように書けば良いのでしょうか。
- ベストアンサー
- CAD・DTP
- VBAでのセル範囲指定について
お世話になります。 私が分からないのは、VBAでのセル範囲指定なのですが、 例えば、シートにデータが有、そのデータの1行目は見出しなので 2行目からデータが入っているセルまでの範囲を指定、コピーして 隣のシートに貼付したいのですが、そのデータの入力される範囲が 毎回違います。「CurrentRegion.Select」としてしまうと、1行目 の見出しまでも範囲指定されてしますので、どうやったら良いのか どなたかお教え頂きたく宜しくお願い申し上げます。
- ベストアンサー
- SE・インフラ・Webエンジニア
- VLOOKUP関数の範囲をセルで指定したいと思っています。
VLOOKUP関数の範囲をセルで指定したいと思っています。 B1:参照シート名(VLOOKUP関数で使用する範囲があるシート) C2:範囲の開始位置 E2:範囲の終了位置 B3:G3:列番号(B3の値は、B6:B8の範囲で使用する列番号、 D3の値は、D6:D8の範囲で使用する列番号) これらのセルに入力された情報をもとにB6:G8の範囲にVLOOKUP関数を 反映させたいと思っています。 例えば、 B1に参照シート名「2ケタ」 C2にVLOOKUP関数の範囲の開始位置「A5」 E2にVLOOKUP関数の範囲の終了位置「G7」 B3に範囲の列番号「2」がある場合 B6に「=VLOOKUP(A6,'2ケタ'!A5:G7,2,0)の関数を入力。 B2に参照シート名「3ケタ」 C5にVLOOKUP関数の範囲の開始位置「B5」 E2にVLOOKUP関数の範囲の終了位置「H7」 C3に範囲の列番号「3」がある場合 C6に「=VLOOKUP(A6,'3ケタ'!B5:H7,3,0)の関数を入力。 といった感じです。 現在、B6に「=VLOOKUP($A6,INDIRECT($B$1&"!a5:g7"),INDIRECT("$b$3"),0)」と 関数を入力して、VLOOKUP関数の「範囲の参照シート名」と「列番号」の情報は セルから持ってくることができました。 しかし、「a5:g7」という範囲だけは、INDIRECT関数をうまく入れることができません。 どのように関数を入力したら、上手くいくのか、教えていただけないでしょうか。
- ベストアンサー
- オフィス系ソフト
- IFとVLOOKUP関数
VLOOKUP関数を使って検索結果を出そうと思いましたが、 データ量が93000行X8列になりますので、 共通分けして複数のシート(A、B、C、D)に分けました。 あるセルに『A』と入れると『シートA』の表から検索を行う、 あるセルに『B』と入れると『シートB』の表から検索するといった感じにするには、 IFとVLOOKUPを使用するなら、どのような式を入れたらいいのでしょうか? また、他の関数を使う式があるのでしょうか? マクロやVBAも考えましたが、 あまり知識がありません。 データ量から考えると マクロやVBAで行った方がいいのでしょうか?
- ベストアンサー
- Windows系OS
- 変数を使ってセルの参照
初歩的な質問ですいません。 セルの参照で A B C 1 あ い 2 う え ='D:\A¥B\[B1.xlsx]Sheet1'!合計 のフォルダBとファイルB1を変数にして C1に ='D:\A¥あ\[い.xlsx]Sheet1'!合計 C2に ='D:\A¥う\[え.xlsx]Sheet1'!合計 としたいのですが、 その場合どう表記すればいいのですか? INDIRCT関数の場合も教えていただければありがたいです。
- ベストアンサー
- その他MS Office製品
- エクセル、ブック間でのデータ読込
教えてください。 Excel2010を使っています。 動作:閉じているブックからデータを読み出し、開いているブックに貼付けることです。 詳細:閉じているブック’2014_9月.xlsx’、シート’AAA’、セル’C200~D215・I200~I215のデータを 開いているブック’2014集計.xlsx、シート’集計’、セル’B20~C35・D20~D35に貼付けをた いのですが。 応用1. 閉じているブック’2014_9月.xlsx’、シート’AAA’、セル’C200~D215・I200~I215 ↓ 開いているブック’2014集計.xlsx、シート’集計’、セル’B20~C35・D20~D35 閉じているブック’2014_10月.xlsx’、シート’AAA’、セル’C200~D215・I200~I215 ↓ 開いているブック’2014集計.xlsx、シート’集計’、セル’B40~C55・D40~D55 閉じているブック’2014_11月.xlsx’、シート’AAA’、セル’C200~D215・I200~I215 ↓ 開いているブック’2014集計.xlsx、シート’集計’、セル’B60~C75・D60~D75 ・ ・ ・ 閉じているブック’2015_9月.xlsx’、シート’AAA’、セル’C200~D215・I200~I215 ↓ 開いているブック’2015集計.xlsx、、シート’集計’、セル’B20~C35・D20~D35 それぞれのブックは事前に作成します。’2014_9月.xlsx’、’2014_10月.xlsx’、’2014_11 月.xlsx’、’2015_9月.xlsx’、’2014集計.xlsx、’2015集計.xlsx 応用2. 現状 閉じているブック’2014_9月.xlsx’、シート’AAA’、セル’C200~D215・I200~I215 ↓ 開いているブック’2014集計.xlsx、シート’集計’、セル’B20~C35・D20~D35 開いているブック’2014集計.xlsx、シート’集計’セルB19’年’、セルC19’月’を変更する ことにより 変更 閉じているブック’2014_10月.xlsx’、シート’AAA’、セル’C200~D215・I200~I215 ↓ 開いているブック’2014集計.xlsx、シート’集計’、セル’B20~C35・D20~D35 と言うことは可能でしょうか。 エクセルのマクロは初心者で苦労をしています、ご教授頂ければ幸いです。 よろしくお願いいたします。
- 締切済み
- その他(ビジネス・キャリア)
お礼
ありがとうございました。