How to extract domain name from URL in Excel?
If you are always dealing with a lot of URLs in your workbook, sometimes, you may want to extract only the domain name from each webpage. In Excel, how could you quickly get the domain names from URLs?
Recommended Productivity Tools for Excel
Office Tab: Bring powerful tabs to Office (include Excel), just like Chrome, Safari, Firefox and Internet Explorer. Save you half the time, and reduce thousands of mouse clicks for you. 30-day Unlimited Free Trial
Kutools for Excel: Save 71% of your time and solve 82% Excel problems for you. 300+ advanced tools designed for 1500+ work scenario, make Excel much easy and increase productivity immediately.60-day Unlimited Free Trial
The following long formula can help you to return the domain name from webpage as you need. Please do as follows:
1. In a blank cell which next to your webpage cell, enter the following formula, in this example, I will type the formula in cell B2: =IF(ISNUMBER(FIND("www.",A2)),MID(A2,FIND("www.",A2)+4,IF(ISNUMBER(FIND("/",A2,9)),FIND("/",A2,9),LEN(A2)+1)-FIND("www.",A2)-4),MID(A2,FIND("//",A2)+2,IF(ISNUMBER(FIND("/",A2,9)),FIND("/",A2,9),LEN(A2)+1)-FIND("//",A2)-2)).
Note: in the above formula, A2 indicates the cell which contains the webpage you want to get the domain name from, you can change it as you need.
2. Then press Enter key, and select the cell B2, drag the fill handle down over to the range that you want to apply this formula, and all the domain names have been extracted from the each URL. See screenshot:
If you are interested in VBA code, you can create a User Defined Function to extract the domain name from URLs.
1. Hold down the ALT + F11 keys to open the Microsoft Visual Basic for Applications window.
2. Click Insert > Module, and paste the following code in the Module Window.
VBA code: extract domain name from URL
Function ExtractDomain(ByVal URL As String) As String 'Update 20140904 If InStr(URL, "//") Then URL = Mid(URL, InStr(URL, "//") + 2) End If If Left(URL, 4) Like "[Ww][Ww][Ww0-9]." Then URL = Mid(URL, 5) End If ExtractDomain = Split(URL, "/")(0) End Function
3. Then save and close the code, go back to the worksheet, and enter this formula =Extractdomain(A2) into a blank cell besides the webpage, see screenshot:
4. And then press Enter key, select the cell B2, and drag the fill handle down to the cells that you want to contain this formula, and all the domain names will be extracted from each webpage cell.
Recommended Productivity Tools
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
To post as a guest, your comment is unpublished.· 3 years agoThis formula worked for all my URLs except for ones with another URL in the query string. Would love a fix for that, but otherwise, it's great!
To post as a guest, your comment is unpublished.· 4 years agoThank you very much for making this formula available. I was able to use it. Thank you.