[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『Excelのマクロを使用して条件に合ったデータを取り出したい』(JIN)
以前に別の板で質問をしたのですが、それに追加で知りたいので再度板を立てます。
https://www.excel.studio-kazu.jp/kw/20211227133517.html
□しか入ってない場合は、「ブランク」や「0」
それ以外の記号が入っている場合は、「1」や「あり」
どの文言も入ってない場合も同様に□しか入ってない場合と同じ扱い
このようにしたいと思っています。
ここで作成して頂いた下記のマクロ
Sub Test()
Dim c As Range, ary As Variant For Each c In Range("A1", Cells(Rows.Count, "A").End(xlUp)) c.Offset(, 1).Value = 0 For Each ary In Array("〇", "●", "◎", "△", "▽", "▲", "▼", "■", "◇", "◆", "☆", "★") If InStr(c.Value, "□") > 0 And InStr(c.Value, ary) > 0 Then c.Offset(, 1).Value = 1 Exit For End If Next Next End Sub
このマクロを実行すると
★□の様な場合には、「1」
★や
□だけの場合は、「0」になります。
これを
★□の場合は、「1」
★の場合は、「1」
□だけの場合は、「0」
★などの指定の文字以外は「0」
このようにしたいのですがどのようにしたらよいのでしょうか?
分かる方が居ましたら宜しくお願い致します。
< 使用 Excel:unknown、使用 OS:unknown >
確かに、□だけの場合しかないのであれば普通にフィルタでも良いかも知れないのですが…
□単体は、省いて
★□の時は省かないってのが出来なかったので…
(JIN) 2022/01/05(水) 16:43
□ を無視してもおなじですよね。
(わからん) 2022/01/05(水) 16:53
ダメ押しで、 ★があって□がない 「1」 ★があって□がある 「1」 ★がなくて□がない 「0」 ★がなくて□がある 「0」→□だけ ★(など)があれば「1」ですね。
(namn) 2022/01/05(水) 17:05
(JIN) 2022/01/05(水) 17:17
だから、□を無視すれば。 (namn) 2022/01/05(水) 17:24
□を無視とは?
フィルタで ★があって□がある 場合、□を無視したら
意味をなさないような気が...
(JIN) 2022/01/05(水) 18:04
★があれば1で、□はあってもなくても1でしょ。 ★があるかどうかだけでいい。 (namn) 2022/01/05(水) 18:16
>これを >★□の場合は、「1」 >★の場合は、「1」 >□だけの場合は、「0」
□の有無は関係なく"〇", "●", "◎", "△", "▽", "▲", "▼", "■", "◇", "◆", "☆", "★" の指定文字が1つでもあれば 1なら □を無視して
>If InStr(c.Value, "□") > 0 And InStr(c.Value, ary) > 0 Then ↓ If InStr(c.Value, ary) > 0 Then
では (ピンク) 2022/01/05(水) 18:30
>フィルタで ★があって□がある 場合、□を無視したら意味をなさないような気が...
時折、フィルタという文言が出てきますが、どういう操作と結果の事をいっているのでしょうか? 前スレも見てみましたが、そういった内容はありませんでした。
質問者さんと認識の違いがあるようで、嚙み合っていないのは↑が関係していますか?
提示されたコードには、フィルタ機能もフィルタもどきの結果も無いですが。
#撤回?された別スレと内容が違い無いような。
(tkit) 2022/01/06(木) 10:31
本当にすみません、そしてピンクさん再登場ありがとうございました。
(JIN) 2022/01/06(木) 11:27
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.