- ベストアンサー
VBAで文字列検索の方法
SANDORAMANの回答
- SANDORAMAN
- ベストアンサー率25% (1/4)
こんにちは IT_F = 0 For I = 1 To Len(Cells(1, 1)) If Mid(Cells(1, 1), I, 2) = "値引" Then IT_F = 1 Exit For End If Next I If IT_F = 1 Then MsgBox "一致しました。" Else MsgBox "一致しません。" End If こんな感じでどうでしょう? Cells(1, 1)は"A1"セルという意味です。 中の値には変数も使えます。 MID関数はCells(1, 1)の文字列のI番目から2文字の値を取得させています。 例えば"値引き"にするなら3文字なので Mid(Cells(1, 1), I, 3) = "値引き" に変えればいいですね。 わかりづらくてすいません。
関連するQ&A
- Excel VBAで文字列の日付を判定
Excel VBAで文字列の日付を判定 文字列の書式で”19900101”などとセルに入力されている場合に実際に存在する日付かを判定する方法はありますでしょうか? たとえば、19990132などと入力されている場合はエラーにしたいのです。ISDATEを使うのかともおもいましたがうまくいきません。 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- エクセルVBAで文字列を判定する方法
たとえばセルA1に何か入力した時にその入力したものが、数列か文字列かを判定する方法はVBAでありませんか?よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- EXCELで文字列の特定の文字の位置を知る方法
EXCELで文字列の特定の文字の位置を知る方法 EXCELでセル中の文字列、例えば、"abc 4/3 5/5 6/4" の最後の"/"の位置を知る方法を関数の組み合わせで出来ますか? 教えてください。"/"の数は任意で最後の"/"の位置を知りたいのですが??? どうかよろしくお願いします。VBAでなく関数の組み合わせでお願いします。
- ベストアンサー
- オフィス系ソフト
- 文字列検索の参照文字列の指定について
Excelでセルに任意の文字列をペーストします。そのセルは別のブックにリンクしているのでペーストする度にリンク先のセルでは文字列が更新されます。リンク先のブックにはワークシートが10あっていづれかのシートのA列にその文字列がある事になっています。更新された文字列を検索する作業を繰り返すのでマクロで組み込もうと思ったのですがFIND関数にしても、VBでCell.Find(What:=....と書くにも参照する文字列を直接指定してやらないと動きません。参照する文字列が相対的に変化するので「特定のセルの中に入力された文字列」を参照してブック内を検索したいということなのですが、実現するにはどうしたらようでしょうか?
- ベストアンサー
- オフィス系ソフト
- エクセルVBA:文字列での検索
エクセルVBAで、在庫管理をしようとしています。初心者です。 4個のListboxをそれぞれ選んでいくと、任意の商品名になるようにしています。 そこで、選んでもらった後、 Listbox1.List(Listbox1.ListIndex) & Listbox2.List(・・・・ というように4個のListboxから選ばれた文字列をつなぎ、別シートの在庫データベースの「商品名」と「Listboxをつなぎ合わせた文字列」と同じのを探させて、在庫を引き落とすようにしています。 ですが、できる場合とできない場合があります。 何ででしょう? 文字列で突き合わせると、見た目が同じ場合でも違うと認識されることがあるのでしょうか?(半角全角が違うとか、最後にスペースが入っているとかはないです。試しにセルに貼り付けてvlookupで検索してみると、できました。)
- ベストアンサー
- Visual Basic
- エクセル 文字列検索と検索した文字列が含まれるセルへのジャンプ
エクセル教えてください。 VBAは使ったことがありません。 現在Q&Aを作っています。 かなりボリュームが増えてしまったので、 文字列検索ができるようにしたいと思っています。 そこで、あるセルに調べたい文字列を入力し、 検索ボタンを押すと、その文字列が含まれるセルにジャンプする。 こんな機能は、エクセルでできませんでしょうか? マクロを組んだりすればよいのでしょうか? 教えてくださいー。
- ベストアンサー
- オフィス系ソフト
- vbaでvlookup
エクセルのVBAについて。 指定した範囲の中から検索条件に一致したデータを検索し、取り出してくれる関数vlookup をVBAで実現したいのですが、 目標として、エクセルのセル(列)に、値を入力されているとします。 VBAを実行するボタンをクリックすると、、、 その値に対応する文字列(事前に用意)をその値の右のセルに自動で入力させたいです。 このVBAを作ることが目標です。 vbaでvlookupを実現でなくても、それよりも簡単な方法があれば教えていただきたいです。 お手数ですが、よろしくお願いします。
- 締切済み
- Excel(エクセル)
- VBAで文字列を圧縮、復号したい
以下のサイトと同じことをVBAで実現できないでしょうか? JavaScriptで文字列を圧縮する https://setchi.hatenablog.com/entry/2013/11/09/114432 元の文字列:エクセル 圧縮された文字列:U3U1VrUwUnW0UIUy3KAMJycww1jV0QkA 復号された文字列:エクセル データの復号をすることになり、エクセルで処理を行いたいと思ってます、データは圧縮された文字列Base64のようで、サイトなどで調べVBAでBase64の復号を試しましたが正しく文字列にならず、上記のサイトで試したところ正常な文字列に復号されました。これをなんとかVBAで実現したいと思っとおります、何卒、ご教授お願いします。
- ベストアンサー
- その他(プログラミング・開発)
- VBA 文字列→検索→置き換え
Excel 2007です。 VBAで、特定のレンジのセルから、特定のセルに入った文字列を検索して削除するにはどうしたらよいでしょうか? 具体的にはB2:B100の中にあるA1セル内の文字列を削除する。といった感じです。 よろしくお願い致します。
- ベストアンサー
- オフィス系ソフト
- エクセル ある文字列を入れるとある文字列を返す
エクセルでの関数、ど素人です。一応自分で調べたのですが、無理なので質問させていただきます。よろしくお願いいたします。 エクセルで、時刻ですが文字列として1745~2345までを手入力します(1745,とか2000とか2330とか。。。。。) 入れた文字列によって、すぐ横のセルに1745、1800、1815であれば8.00、1830からは0.25刻みで8.25、1845であれば8.50、1900であれば8.75。。。。2330であれば13.25、2345であれば13.50と言ったように、入力した文字列に対しある特定の文字列を自動的に入れたいのですが、どのような関数を使えばよろしいのでしょうか。 私が行おうとしたのは、別シートに文字列一覧を作り、if(特定のセル(手入力するセル)=別シートの1745~2345まで、横のセル=別シートの8.00、8.00、8.00~13.50まで)や、sumif、lookupを使ってみましたが撃沈です。 どなたか教えていただきたく、お願いいたします。
- 締切済み
- その他MS Office製品