2016-12-29 14 views
0

次の操作を行う際に、ヘルプを探しています。VBA Excelワイルドカード文字列を検索し、新しいセルにコピーして貼り付けます。

多くの列を持つExcel(100K +行)のデータが大量にあります。列の1つ(col Aと言うだけです)には、各セルにjavaを示すファイルパス情報を示す一連のデータがありますインストール。その文字列内を検索して、同じ文字列を開始して終了する共通の文字を検索する必要がありますが、その間に異なるデータがあるため、識別にはワイルドカードが必要になります。指定された列(col A)の各セルの文字列検索でデータを識別した後、データの右側にある別の列(col B)に識別されたデータをコピーして、各行の同じワークシートに貼り付ける必要があります。

COLUMN(元のデータ列)
C:\アプリ\ Javaの\ jre7はビン\ \ ...
したがって、このようになります C:¥Program Files(x86)¥Java¥jre6¥bin¥...
C:¥app¥JAVA¥jdk1.7.0._21¥jre¥bin¥...
C:¥JAVA¥JDK- 1_5_0_16_i586 \ jre \ bin \ ...

COLUMNのB(コピー&ペーストこちらへ)
jre7
JRE6
jdk1.7.0._21
JDK-1_5_0_16_i586

拾うために、ワイルドカード検索が必要になります\ & \と文字の間にあるものJとまたはDK可能性がありますが、任意の長さでこれをフォローする文字や数字を許容しなければならない2つの文字が続くことになります。 \j??*#*\のようなもので、常に最初の2文字で始まり、その後に2文字、その後に別の文字が続くか、まったく新しいものでなければなりません。

あなたは、私が彼らにあるバージョン番号とバージョン情報をピックアップしようとしているとJRE最も以来、その中のみまたはJDK、とディレクトリ情報を取得する必要はありません例からもわかるように私のデータのこれらのディレクトリは、ファイルパス文字列のどこかにリストされています。

次に、この情報をコピーして例に示すようにCol Bに貼り付けることが、私がやろうとしていることです。

これは自動化のメリットが大きい手動プロセスなので、助けてください。

+1

S.O!へようこそ!何か試しましたか?その場合は、コードを入力してください。 [ツアー](http://stackoverflow.com/tour)と[質問方法](http://stackoverflow.com/help/how-to-ask)をご覧ください。フレンドリーなメモ:StackOverflowは "私たちはあなたのためのコード"サービスプロバイダーではありません[VBA入門](https://blog.udemy.com/excel-macros-tutorial/)または[Mid-Advancedチュートリアル](http: /analysistabs.com/excel-vba/codes-examples-macros-how-tos-most-useful-basics-advanced/)と私の[個人的なお気に入り](http://analystcave.com/excel-vba-tutorial/) – Sgdva

答えて

0

実際には、数式を使ってこれを行うための本当に簡単な方法があります。あなたが望むなら、これらのすべてを1つの式に組み合わせることができますが、私は4つの簡単な公式にそれを広げ、4つめの答えはあなたに答えを与えます。最初の文字列を仮定

はセルA1である:

B1 = = SEARCH( "Javaの"、A1)

C1 = = FIND( "\"、A1、E1)

D1 = =( "\"、A1、F1 + 1)

E1 = = MID(A1、F1 + 1、G1-F1-1)を見つける

E1は、あなたの答えを持っています。列を自動入力して、列Eに値をコピーしてコピーし、列B〜Dを削除します。

関連する問題