EXCEL VBAで困ってます
アクティブなシートのセル番地"B1"に"外部"と値が入力されていて
同じアクティブなシートのセル番地"B2"に"仕様"と値が入力されています
これをネットワーク先にあるエクセルファイルの中に該当する値が入力されているか
を調べたいのですが、ロジックをどう書けば良いのかわかりませんので教えてください
例えばネットワーク先のファイルは仮に以下とします
\\EXCEL\VBA\MACRO\Reference.xls
このファイル内に上記の値が格納されています
ただ、外部については"内部/外部"と入力されており、"仕様"は同じです
ですので完全一致と部分一致(?)で比較をし、それぞれ"C1""C2"に合致すれば"○"、
無いもしく違えば"×"と値を返したいのです
尚且つ、ファイル内を指定するだけで、セル番地やシート名まで指定せずに比較したいのです
どうかご教授頂きますようお願い致します
No.1
- 回答日時:
補足要求です
>セル番地やシート名まで指定せずに比較したいのです
これは
\\EXCEL\VBA\MACRO\Reference.xls
のいずれかのシートにアクティブシートのB1(外部)とB2(仕様)と一致する文字列があったら"○"という判定をすればよいのですか?
実際にはありえないのかもしれませんが「外部」と「仕様」が別々のシートにあっても良いのでしょうか?
また「海外部門」のように部分一致でも"○"ですか
回答ありがとうございます
補足要求にお答えします
\\EXCEL\VBA\MACRO\Reference.xlsのいずれかのシートに「外部」と「仕様」が
別々にあっても構いませんし、一致する文字列があれば"○"という判定で大丈夫です
「海外部門」も"○"です
早速No.2でロジックを作って頂きありがとうございます
まずはそのロジックを使って試してみます
どうもありがとうございました
No.2
- 回答日時:
#01です。
とりあえずReference.xlsのいずれかの同一シートにB1,B2の両方の値が存在する場合に"○"と判定するマクロにしてみました。Sub Macro9()
Dim actSht, sht As Worksheet
Dim wkVal1, wkVal2, res1, res2
Set actSht = ActiveSheet
wkVal1 = ActiveSheet.Range("B1").Value
wkVal2 = ActiveSheet.Range("B2").Value
Workbooks.Open "\\EXCEL\VBA\MACRO\Reference.xls"
For Each sht In Worksheets
Set res2 = Nothing
Set res1 = sht.Cells.Find(wkVal1, lookat:=xlWhole)
' 部分検索なら xlWhole → xlPart
If Not res1 Is Nothing Then
Set res2 = sht.Cells.Find(wkVal2, lookat:=xlWhole)
If Not res2 Is Nothing Then
Exit For
End If
End If
Next sht
Workbooks("Reference.xls").Close False
actSht.Activate
If res1 Is Nothing Or res2 Is Nothing Then
MsgBox ("×")
'ActiveSheet.Range("A1") = "×"
Else
MsgBox ("○")
'ActiveSheet.Range("A1") = "○"
End If
End Sub
No.3ベストアンサー
- 回答日時:
#01です。
補足拝見しました。#02回答のFor Each sht In Worksheets
から
Next sht
までを以下に置き換えると、「外部」と「仕様」が異なるシートに存在しても"○"と判定します。今度は部分一致で判定させています。
Set res1 = Nothing
Set res2 = Nothing
For Each sht In Worksheets
If res1 Is Nothing Then
Set res1 = sht.Cells.Find(wkVal1, lookat:=xlPart)
End If
If res2 Is Nothing Then
Set res2 = sht.Cells.Find(wkVal2, lookat:=xlPart)
End If
Next sht
この回答への補足
>zap35さん
たびたびありがとうございます
早速試しましたら表示できました
ありがとうございます
私の質問に補足をさせて頂きますと
"B1"の「外部」には"C1"へ「○か×」を返し、"B2"の「仕様」には"C2"へ「○か×」を
返すような結果にしたいのです
そちらも教えて頂けますでしょうか
お願い致します
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) excelで検索した商品の画像(ネットワーク上の)を表示させたい。 3 2023/06/28 00:32
- Visual Basic(VBA) 顧客ごとに違う点検案内を作成するマクロ 4 2022/09/16 05:34
- Excel(エクセル) エクセル バーコード作成で他のシートを参照するには? 2 2023/05/03 16:57
- Excel(エクセル) マクロVBA別Excelブックにデータ転記 2 2022/07/10 23:35
- Visual Basic(VBA) Excel ファイルを指定し、指定されたファイル内にシートを統合するVBA 8 2023/07/10 10:09
- Visual Basic(VBA) Excelのマクロコードについて教えてください。 1 2022/03/27 13:25
- Excel(エクセル) 関数EXACT(文字列,文字列)とexcelVBA 3 2022/04/14 15:07
- その他(データベース) Excel VBA 転記について 1 2022/04/20 16:55
- Visual Basic(VBA) VBAコードを張り付け後のエクセルの進め方 2 2023/02/07 18:24
- オープンソース Python openpyxlを使用したセル番地の使用について 1 2023/08/03 22:05
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
首吊りどこ締めるの
-
至急!尿検査前日にオナニーし...
-
白血球が多いとどんな心配があ...
-
腕を見たら黄色くなってる部分...
-
検便についてです。 便は取れた...
-
彼女のことが好きすぎて彼女の...
-
精子が黄色?
-
勃起する時って痛いんですか? ...
-
尿検査前日に自慰行為した時の...
-
尿検査の前日は自慰控えたほう...
-
口の中に黒い血の塊
-
これって喉仏ですか? 私は女性...
-
精子に血が・・・
-
中出しをするとお腹が痛い・・・。
-
納豆食べた後の尿の納豆臭は何故?
-
甲状腺腫れ
-
EXCELで式からグラフを描くには?
-
EXCELで条件付き書式で空白セル...
-
筋トレするとチンコが縮んじゃ...
-
爪が紫色?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
至急!尿検査前日にオナニーし...
-
首吊りどこ締めるの
-
尿検査の前日は自慰控えたほう...
-
尿検査前日に自慰行為した時の...
-
検便についてです。 便は取れた...
-
白血球が多いとどんな心配があ...
-
中出しをするとお腹が痛い・・・。
-
射精をして1週間以内に尿検査を...
-
彼女のことが好きすぎて彼女の...
-
腕を見たら黄色くなってる部分...
-
勃起する時って痛いんですか? ...
-
変な話しになります。尿検査で...
-
これって喉仏ですか? 私は女性...
-
EXCELで条件付き書式で空白セル...
-
男です。昨日の午後3時くらいに...
-
今朝、毎朝の習慣でオナニーし...
-
納豆食べた後の尿の納豆臭は何故?
-
1日前の検尿
-
値が入っているときだけ計算結...
-
精子が黄色?
おすすめ情報