簡體   English   中英

將單元格的最后一個值復制到另一列的單元格中

[英]copy last value of a cell into a cell of another column

在Excel列中,或者有一個值(字母數字)我應該復制到同一行的單元格中,但是在另一列中,或者有多個值用空格分隔,我應該將最后一個值復制到另一列中。 值具有相同的格式,數字5或6后跟一個字符和三個數字(8或9個字符)。 如果另一列中有一個值,而8個或9個字符中的最后一個有多個值,如何正確復制?

謝謝

在此處輸入圖片說明 頌歌

在此處輸入圖片說明

(在附加輸入和聊天后更新)

一槍!

=IF( AND(ISERR(FIND(CHAR(10), A1)), ISERR(FIND(CHAR(32), A1))), A1, 
MID(A1, MAX(IFERROR(FIND("#",SUBSTITUTE(A1,CHAR(10),"#",LEN(A1)-LEN(SUBSTITUTE(A1,CHAR(10),"")))),0),IFERROR(FIND("#",SUBSTITUTE(A1,CHAR(32),"#",LEN(A1)-LEN(SUBSTITUTE(A1,CHAR(32),"")))),0) )+1, LEN(A1)- MAX(IFERROR(FIND("#",SUBSTITUTE(A1,CHAR(10),"#",LEN(A1)-LEN(SUBSTITUTE(A1,CHAR(10),"")))),0),IFERROR(FIND("#",SUBSTITUTE(A1,CHAR(32),"#",LEN(A1)-LEN(SUBSTITUTE(A1,CHAR(32),"")))),0) ) ) 
)

用文字...

如果找不到換行符或空格,則獲取整個單元格文本, 否則找到最后出現的換行符(字符10) 空格(字符32),然后從該索引中獲取文本

在此處輸入圖片說明

您也可以使用此公式。

=IF(ISNUMBER(SEARCH(" ",A1)),TRIM(RIGHT(SUBSTITUTE(A1," ",REPT(" ",LEN(A1))),LEN(A1))),A1)

在此處輸入圖片說明

使用以下VBA子復制到另一列。

    Public Sub CopyAnotherColumn()
    Dim LastUsedCell As Long
    Dim stCopyItIt As String

        LastUsedCell = Range("A1").End(xlDown).Row
        For Each rCell In Range("A1:A" & LastUsedCell)

            If InStr(1, rCell, " ", vbTextCompare) > 0 Then
                stCopyItIt = StrReverse(rCell.Value)
                 stCopyItIt = Left(stCopyItIt, InStr(1, stCopyItIt, " ", vbTextCompare))
                 ReturnLastWord = StrReverse(Trim(stCopyItIt))
                rCell.Offset(0, 2).Value = ReturnLastWord
            Else
                rCell.Offset(0, 2).Value = rCell.Value
            End If
        Next

    End Sub

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM