2015-06-30 51 views
1

我正在使用Vlookup刪除另一個工作表中的單元格的內容。問題在於這個單元有2行,由VBA編寫,由chr(10)或vbLF(相當於alt +輸入切換單元格中的行)分隔。我只想要第一行。這就是我現在所擁有的(RechercheV是VLOOKUP法文):在不使用vb​​a的情況下刪除換行子字符串

=RECHERCHEV("btn_" & etape_doc;LangueEtapes!A:D;3;FAUX) 

它返回「Transfert1Responsable:IC」(在靶細胞,Transfert1是在第一行,並RESPONSABLE:IC是在下)。我想在換行時打破,只保留「Transfert1」。

非常感謝!

回答

0

原來的換行符在英語中稱爲CHAR(10),在法語中稱爲CAR(10)。因此,使用這樣的:http://www.gcflearnfree.org/excel-tips/how-to-use-excels-vlookup-function

我改變了我的公式是:

= GAUCHE(RECHERCHEV("btn_" & etape_doc;LangueEtapes!A:D;3;FAUX); TROUVE(CAR(10); RECHERCHEV("btn_" & etape_doc;LangueEtapes!A:D;3;FAUX))-1) 

它完美地工作!

來源爲CHAR(10):http://blog.contextures.com/archives/2011/08/08/add-line-break-in-excel-formula/

編輯:這樣做的整體目標是增加一個IF語句,將改變基於由用戶選擇的語言文字。該語言是從另一張工作表(法語爲英文)的驗證列表中選擇的,VlookUp的第3列爲法文版,第4列爲英文版。加入IF聲明後,我結束了與這個怪物(這是拋開問題,我張貼的情況下,任何人都想要進一步與他們的VlookUp功能):

=SI(Paramètres!cell_langue="FR"; GAUCHE(RECHERCHEV("btn_" & etape_doc;LangueEtapes!A:D;3;FAUX); TROUVE(CAR(10); RECHERCHEV("btn_" & etape_doc;LangueEtapes!A:D;3;FAUX))-1); GAUCHE(RECHERCHEV("btn_" & etape_doc;LangueEtapes!A:D;4;FAUX); TROUVE(CAR(10); RECHERCHEV("btn_" & etape_doc;LangueEtapes!A:D;4;FAUX))-1)) 
相關問題