TOP

Collegamento del testo nelle celle in base alla condizione (CONCATIF)

Descrizione

Diciamo di avere una tabella di prestiti con la corrispondente garanzia. Dobbiamo, ad esempio, visualizzare un elenco di garanzie per ciascun prestito in una cella.

Excel può fornirci solo una semplice funzione CONCATENATE, ma dovrai selezionare manualmente le celle necessarie. Per semplificare il lavoro, dobbiamo automatizzare il processo di combinazione del testo di celle diverse in base a una condizione. Quindi, se hai bisogno di "concatenare" rapidamente il testo da celle diverse utilizzando la condizione IF, dovresti scrivere la tua funzione.


Tabella dei prestiti garantiti:

VBA codice per la funzione CONCATIF

Quindi, creiamo la nostra funzione e chiamiamola CONCATIF. Per fare ciò, apri il menu Service - Macros - Visual Basic Editor, inserisci il modulo VBA (menu Insert - Module) e copia il testo di questa funzione lì:

Function CONCATIF(Table As Range, SearchValue As Variant, Table2 As Range)
	'moonexcel.com.ua
	Dim i As Integer
	
	For i = 1 To Table.Rows.Count
		If Table.Cells(i, 1) = SearchValue Then
			If Not IsEmpty(Table2.Cells(i, 1).Value) Then
			    CONCATIF = CONCATIF & Table2.Cells(i, 1).Value & "; "
			End If
		End If
	Next i
	
	CONCATIF = Left(CONCATIF, Len(CONCATIF) - 2)
End Function

Chiudi Visual Basic Editor e torna a Excel.

Ora, in Function wizard nella categoria User Definite puoi trovare la nostra funzione CONCATIF e usarla. La sintassi di questa funzione è la seguente:

=CONCATIF (colonna dei valori di ricerca; valore di ricerca; colonna dati da combinare)

Avremo il seguente risultato:

Infine, devi bloccare gli intervalli A2:A10 e C2:C10 con il simbolo del dollaro ($) in modo che gli intervalli non si spostino verso il basso quando copi la funzione.

Articoli sull'argomento: