Excel (VBA)

Excel VBAに関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(指定なし)
項目の文字列を検索し位置を取得したい&
投稿日時: 22/01/11 15:17:01
投稿者: なみっこ

日次シートは、元データシートのデータを参照していています。
日次シートD2=countifs(元データシート!$A:$A,日次シート!D1,元データシート!$C:$C,"りんご")
 
数ヶ月に1度、元データシートの項目が追加されたり、列の順番が変わったりするため
そのたびに関数の編集を行っています。
元データシートの1行目から、項目の文字列をを検索し位置を取得する方法はないでしょうか。
取得した列番号をcountifsの検索条件範囲に指定したいです。
 
 
 
〜〜日次シート〜〜
 
  B列  C列  D   E  F
1        1/1  1/2 1/3 1/4
2 A店  りんご 0 
3     みかん 0
4 B店 りんご 1
5     みかん 0 1
6 C店  りんご 1
7     みかん 0
 
 
〜〜元データシート〜〜
  A列  B列  C列    D   E  F  XL
1 日付  店舗  商品  天気  人数 … 期限
2 1/1   B店  りんご 晴れ  3     1/12 
3 1/1   C店  りんご 晴れ  3
4 1/2   B店  みかん
 
説明が下手ですみません。
ご教授頂けますと幸いです。

回答
投稿日時: 22/01/11 15:49:51
投稿者: QooApp

引用:
元データシートの]1行目から、[color=red項目の文字列をを検索し位置を取得する[/color]方法はないでしょうか。
取得した列番号をcountifsの検索条件範囲に指定したいです。

 
元データシートの「項目名」から2行目以降のデータが何を格納しているのか判定する
という解釈で良かったですか。
 
 
Dim ws As Worksheet
Set ws = ActiveSheet 'シートは任意に設定お願いします。
 
n = ws.Cells.Find("商品", Lookat:=xlPart).Column

列番号
 
n = ws.Cells.Find("商品", Lookat:=xlPart).Row

行番号
 
こんな感じでしょうか

回答
投稿日時: 22/01/11 15:56:36
投稿者: QooApp

■1 表示がぐちゃぐちゃのまま送信してしまったので再送です。すみません。
■2 書式を部分一致検索から完全一致検索に変更しました。
 

引用:
元データシートの1行目から、項目の文字列をを検索し位置を取得する方法はないでしょうか。
取得した列番号をcountifsの検索条件範囲に指定したいです。

元データシートの「項目名」から2行目以降のデータが何を格納しているのか判定する
という解釈で良かったですか。
  
  
Dim ws As Worksheet
Set ws = ActiveSheet 'シートは任意に設定お願いします。
  
n = ws.Cells.Find("商品", Lookat:=xlWhole).Column

列番号
  
n = ws.Cells.Find("商品", Lookat:=xlWhole).Row

行番号
  
こんな感じでしょうか

投稿日時: 22/01/11 16:02:02
投稿者: なみっこ

QooApp様
 
ご回答ありがとうございます。
「一般機能」の方で質問すべきものを
VBAの方で質問してしまいました…。
せっかくご回答頂いたのに誠に申し訳ございません。

回答
投稿日時: 22/01/11 17:12:09
投稿者: WinArrow
投稿者のウェブサイトに移動

引用:

日次シートD2=countifs(元データシート!$A:$A,日次シート!D1,元データシート!$C:$C,"りんご")

 
この数式は、条件に合致する件数を取得するものです。
条件に合致する件数が1件しか存在しないとしても
>位置
を取得することはできないと思います。
>位置
とは、列内の上からの行番号と考えてよいのでしょうか?
↓の意味不明
>取得した列番号をcountifsの検索条件範囲に指定したいです。
 
 
提案:
元データシート
に作業列を設け、
=A1&C1
のような数式を入力します。
下へ、複写します。
仮に作業列をD列として
 
セルD2に
=COUNTIF(元データシート!$E:$E,日次シート!D1&"りんご")
 
マタハ
セルD2を参照しているセルに
Match関数を適用する
でよいと思います。
 
 
 
 
 

投稿日時: 22/01/12 08:07:47
投稿者: なみっこ

ありがとうございます。