我有一個導出的Outlook聯繫人列表,其中充滿了大約1800封電子郵件。一列(Col A)中的電子郵件字段僅填充了大約一半的聯繫人,另一列(列B)用於「顯示名稱」,其中包含其他聯繫人的電子郵件地址。但是,「顯示名稱」列中除了包含電子郵件地址外,還包含其他數據,所以我想避免覆蓋現有電子郵件地址A.將填充的列複製到同一行另一列中的空字段中
所以,我想找到一種方法來填充只有Col A的數據來自Col B的空場。任何幫助將不勝感激!
我有一個導出的Outlook聯繫人列表,其中充滿了大約1800封電子郵件。一列(Col A)中的電子郵件字段僅填充了大約一半的聯繫人,另一列(列B)用於「顯示名稱」,其中包含其他聯繫人的電子郵件地址。但是,「顯示名稱」列中除了包含電子郵件地址外,還包含其他數據,所以我想避免覆蓋現有電子郵件地址A.將填充的列複製到同一行另一列中的空字段中
所以,我想找到一種方法來填充只有Col A的數據來自Col B的空場。任何幫助將不勝感激!
如果你試圖把一切從上校B插入空柱A,那麼你可以在宏中使用此VBA代碼:
Sub macro1()
Dim theSheet As Worksheet
Dim theRange As Range
Dim emailLocation As Integer
Dim output As String
Set theSheet = Sheets("Sheet1")
Set theRange = Range("A1:A" & theSheet.UsedRange.Rows.Count)
For Each theCell In theRange
If theCell = "" Then
emailLocation = InStr(1, theCell.Offset(0, 1), "(")
output = Mid(theCell.Offset(0, 1), emailLocation)
theCell.Value = output
End If
Next
End Sub
這個宏應該工作無論多麼數據片的許多行包含
感謝Mike!這是錢! – user1712390
@ user1712390 welcome!don' t忘記選擇一個問題的答案,並很高興我可以幫助:) –
在第三列,把這段代碼....
=IF(A1 <> "",A1,B1)
然後,它適用於所有1800行。
+ +1爲一個好的簡潔和易於使用的解決方案:) –
Excel似乎不符合雙引號,併產生錯誤,當我嘗試使用公式。 ( – user1712390
@ user1712390,'= IF(A1 <>「」,A1,B1)'是你應該使用的,分號不正確 –
你也可以使用嵌套的if語句中的ISBLANK功能,並在第三列像這樣串聯的兩列:= CONCATENATE(IF(ISBLANK(A2),B2,A2),B2)
是y你試圖把所有在Col.B細胞中的東西都放入空的Col.A細胞中?或者將Col.B單元格中的特定數據放入空的Col.A單元格中? –
理想情況下,我想從Col. B中取出電子郵件地址。目前Col. B單元格看起來像「名字姓氏([email protected])」。 – user1712390
我編輯了我的foreach循環,只從B列中的字符串中獲取電子郵件地址。它專門搜索「(」以知道從哪裏開始 –