Excelで列のテキストの前にある数字を非表示にしますか?


回答:


1

リボンメニューの[ データ ]タブの[ テキストから列へ] 機能を使用して、この列を2つに分割することもできます。#セパレータとして選択する必要があります。

または、あなたの例がすでに2つの別々の列を意味#し、次のように数字のプレースホルダーであった場合:

2 | 12Vendor
3 | 145Vendor

次に、VBA数式を使用してベンダーを取得できますが、入力を解析する必要があります。

もちろん除いて、あればベンダーの前または数ベンダーは、あなたが入り込む可能性があるいくつかの特定の規則、次の-固定サイズのように。001Vendorのような形式が常にある場合は、次の式を使用できます。

=RIGHT(A1,LENGTH(A1)-3)

編集:

ワークシート関数として使用できる素晴らしいソリューションを次に示します。

Public Function demo(ByRef rng As Range) As String

    Dim objRegEx As Object
    Set objRegEx = CreateObject("VBscript.regexp")

    objRegEx.IgnoreCase = True
    objRegEx.Global = True
    objRegEx.MultiLine = True
    objRegEx.Pattern = "\d" 'Match any digit. Equivalent to [0-9].

    demo = objRegEx.Replace(rng.Value, "")
    'The Replace method takes 2 strings as its arguments.
    'If it is able to successfully match the regular expression
    'in the search-string, then it replaces that match with the
    'replace-string, and the new string is returned.
    'If no matches were found, then the original search-string is returned.

    Set objRegEx = Nothing

End Function

パターンを動的にするだけで、他の多くの場面で使用できる正規表現を使用しています。

これに関するドキュメントは次のとおりです。http//msdn.microsoft.com/en-us/library/ms974570.aspx

公平を期すために、ここで見つけた例を適用しました。

http://www.office-loesung.de/ftopic134495_0_0_asc.php


0

セルa1:2;#ベンダー

セルb1:+ Find( "Vendor"、a1,1)

c1 = + MID(A1、B1、LEN(A1))

===========または================

2;#ベンダー

B1 = + MID(A1、Find( "ベンダー"、a1,1)、LEN(A1))

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.