Estrai una stringa contenente una parola da una cella di Excel con centinaia di stringhe


1

Ho una cartella di lavoro di Excel, nella colonna A ogni cella contiene tutti gli URL di un sito (questo significa centinaia di URL in una cella).

Tra tutti gli URL all'interno di una singola cella voglio estrarre solo l'URL che contiene la parola contatto

Per esempio:

Cella A1: http://examplesite.com/index.html; http://examplesite.com/login.php; http://examplesite.com/contact.html; http://examplesite.com/about.html

Cella A2: http://hello.publish.com/alumni; http://hello.publish.com/contact-us; http://hello.publish.com/sitemap; http://hellopublish.com/projects

E così via

Mi piacerebbe avere questo output sulla colonna B.

Cella B1: http://examplesite.com/contact.html

Cella B2: http://hello.publish.com/contact-us

Risposte:


1

Provare la seguente U ser D efined F unzione (UDF) :

Public Function FindContact(inpt As String) As String
   ary = Split(inpt, "; ")
   For Each a In ary
      If InStr(1, a, "contact") > 0 Then
         FindContact = a
         Exit Function
      End If
   Next a
   FindContact = ""
End Function

inserisci qui la descrizione dell'immagine

Le funzioni definite dall'utente (UDF) sono molto facili da installare e utilizzare:

  1. ALT-F11 visualizza la finestra VBE
  2. ALT-I ALT-M apre un nuovo modulo
  3. incollare il materiale e chiudere la finestra VBE

Se si salva la cartella di lavoro, l'UDF verrà salvato con essa. Se si utilizza una versione di Excel successiva al 2003, è necessario salvare il file come .xlsm anziché .xlsx

Per rimuovere l'UDF:

  1. visualizza la finestra VBE come sopra
  2. cancella il codice
  3. chiudere la finestra VBE

Per utilizzare l'UDF da Excel:

= FindContact (A1)

Per ulteriori informazioni sulle macro in generale, vedere:

http://www.mvps.org/dmcritchie/excel/getstarted.htm

e

http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx

e per le specifiche sugli UDF, vedere:

http://www.cpearson.com/excel/WritingFunctionsInVBA.aspx

Le macro devono essere abilitate affinché funzioni!


UDF sopra funziona perfettamente! Grazie mille.
Tm

-1

Poiché tutti i tuoi dati scendono verticalmente, il comando per te è il VLookupcomando. Innanzitutto nella colonna B imposta un identificatore per ciascuno degli URL a partire da 1 e proseguendo fino alla fine. Fallo trascinando il punto nero nell'angolo fino in fondo fino a quando non viene raggiunto l'URL finale. Esempio: VLookup("contact",$A1:$B13,2,TRUE).

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.