1

アドレス付きのセルを含むExcelファイルがあります。

3 つの異なるデータの例:

 123 Main Street/n Apartment2 /n New York, NY 10001
 123 Main Street/n New York, NY 10001
 123 Main Street

3つの別々のフィールドに分割したいと思います。ただし、上記のデータが示すように、/n が 0 回出現するものもあれば、2 回出現するものもあります。また、3 回出現するものもあります。

=LEFT(E6, SEARCH(" /n",E6,1)-2) =RIGHT(Export!E6,LEN(Export!E6)- SEARCH("/n",Export! E6,1)-1)

ただし、可変数の /n があると、式が崩れ始めます

助言がありますか?

4

2 に答える 2

5

答えに値する解決策:

「/n」をデータに含まれていない任意の 1 文字に置き換えます。たとえば、@#$^~- を使用しますText to Columns

すべて置換はCTRL+を押して利用できますH

文字がデータに含まれているかどうかわからない場合は、置換前に検索で確認してください。

于 2013-02-07T20:18:43.737 に答える
2

これはVBAを使用した別の方法です

Option Explicit

Sub Sample()
    Dim MyArray() As String
    Dim ws As Worksheet
    Dim lRow As Long, i As Long, j As Long, c As Long

    '~~> Change this to the relevant sheet name
    Set ws = ThisWorkbook.Sheets("Sheet1")

    With ws
        lRow = .Range("A" & .Rows.Count).End(xlUp).Row

        For i = 1 To lRow
            If InStr(1, .Range("A" & i).Value, "/n", vbTextCompare) Then
                MyArray = Split(.Range("A" & i).Value, "/n")
                c = 1
                For j = 0 To UBound(MyArray)
                    .Cells(i, c).Value = MyArray(j)
                    c = c + 1
                Next j
            End If
        Next i
    End With
End Sub

スクリーンショット(前)

ここに画像の説明を入力

スクリーンショット(後)

ここに画像の説明を入力

于 2013-02-07T20:20:41.083 に答える