Lookup and reference functions
HYPERLINK
Matches all 3 recorded answers
Recorded: 3 workbook cells. How we measure this · See the Rust code
Local names in 40 languages
| Language | Name in Excel |
|---|---|
| Arabic | HYPERLINK |
| Bulgarian | HYPERLINK |
| Czech | HYPERTEXTOVÝ.ODKAZ |
| Danish | HYPERLINK |
| German | HYPERLINK |
| Greek | HYPERLINK |
| English (Australia) | HYPERLINK |
| English (United Kingdom) | HYPERLINK |
| English (United States) | HYPERLINK |
| Spanish | HIPERVÍNCULO |
| Estonian | HYPERLINK |
| Finnish | HYPERLINKKI |
| French | LIEN HYPERTEXTE |
| Hebrew | HYPERLINK |
| Croatian | HYPERLINK |
| Hungarian | HIPERHIVATKOZÁS |
| Indonesian | HYPERLINK |
| Italian | COLLEG.IPERTESTUALE |
| Japanese | HYPERLINK |
| Korean | HYPERLINK |
| Lithuanian | HYPERLINK |
| Latvian | HYPERLINK |
| Norwegian | HYPERKOBLING |
| Dutch | HYPERLINK |
| Polish | HIPERŁĄCZE |
| Portuguese (Brazil) | HIPERLINK |
| Portuguese (Portugal) | HIPERLIGAÇÃO |
| Romanian | HYPERLINK |
| Russian | ГИПЕРССЫЛКА |
| Slovak | HYPERLINK |
| Slovenian | HYPERLINK |
| Serbian (Latin) | HYPERLINK |
| Swedish | HYPERLÄNK |
| Thai | HYPERLINK |
| Turkish | KÖPRÜ |
| Ukrainian | HYPERLINK |
| Vietnamese | HYPERLINK |
| Chinese (Simplified) | HYPERLINK |
| Chinese (Hong Kong) | HYPERLINK |
| Chinese (Traditional) | HYPERLINK |
Names from Microsoft's support site.
What it does
HYPERLINK(link_location, [friendly_name])
HYPERLINK(link_location,[friendly_name]) creates a clickable destination with a displayed label. If no label is supplied the link location is displayed. A destination can be a web URL or a desktop-supported file/workbook location.
Try it
=HYPERLINK("https://handbook.dnacalc.com/","Function handbook") displays “Function handbook” as the link label. Creating the formula does not mean that the destination has been fetched or that navigation has succeeded.
Quirks
Excel for the web supports URL destinations only. A nonexistent or inaccessible location can fail when the user clicks; that is different from calculating the formula. An error-valued friendly name displays its error. Desktop file paths, workbook fragments and web URLs need distinct host navigation rules.
How to implement
Preserve the location and optional label as a host-visible hyperlink result or side channel. Use the location as label when the second argument is omitted, and propagate a supplied label’s worksheet error. A pure-value evaluator can reproduce a label without implementing navigation; report that capability separately. Do not perform an HTTP request simply to evaluate HYPERLINK. Apply the platform’s normal click/navigation behaviour at the host boundary.
Rust code
Show the CalcFunc source of this function
Quoted from the public repository DnaCalc/DnaCalc, crates calc-func and calc-fml, at commit 9e1884369a67. Comments are the source's own. A kernel shared with other functions appears once, on its module page.
HYPERLINK · 1 lines · calc-func/src/catalogue/text_format.rs on GitHub21 hyperlink_fn "HYPERLINK" (1, 2) [V "link_location", V "friendly_name"] |s, a, sv| { hyperlink(s, a) }
hyperlink · 13 lines · calc-func/src/catalogue/text_format.rs on GitHub/// HYPERLINK: the friendly name as it is, or the link location.
fn hyperlink(site: &Site<'_>, a: &[CalcValue]) -> Step<CalcValue> {
let location = text_arg(site, a, 0)?;
match a.get(1) {
Some(value) if !value.is_missing() => match value.core_ref() {
CoreRef::Empty => Ok(CalcValue::number(0.0)),
CoreRef::Array(_) | CoreRef::Reference(_) => Err(site.not_modelled(Some(1))),
_ if value.callable_value().is_some() => Err(site.not_modelled(Some(1))),
_ => Ok(value.clone()),
},
_ => Ok(CalcValue::text(location)),
}
}
Kernels shared with other functions
read_valuecatalogue/text_formatvaluecatalogue/text_formatprofilecatalogue/text_formatrenderedcatalogue/text_formattextcatalogue/text_formatlow32decimalNatural::zerodecimalNatural::from_u64decimalNatural::pow10decimalNatural::normalizedecimalNatural::is_zerodecimalNatural::mul_add_smalldecimalNatural::times_pow10decimalNatural::times_pow5decimalNatural::times_pow2decimalExactDecimal::readdecimalExactDecimal::binarydecimalhas_invalid_exponentformat/datetimelooks_like_datetime_formatformat/datetimewithout_subsecondsformat/datetimerender_with_datetime_tokensformat/datetimetokenize_datetime_formatformat/datetimeelapsed_token_atformat/datetimeclassify_minute_tokensformat/datetimetoken_kindformat/datetimeis_time_neighborformat/datetimepush_literalformat/datetimerender_datetime_literalformat/datetimeformat_elapsedformat/datetimeTimeParts::from_serialformat/datetimemeasured_hostformatcurrency_literalformatdigitsformatfifteenformatsplitformatgroupedformatgeneralformatsignificantformatsectionsformatbracketformatis_conditionformatis_elapsedformatcondition_holdsformatcondition_offormatstrip_tokensformatchooseformatitemsformatnumericformatliteral_textformatinteger_partformatfraction_partformatscientificformatfraction_codeformatFractionCode::renderformatmixed_fraction_under_space_groupingformatconvergentformattext_declared_date_localeformattextformattext_of_textformatmonth_nameformat/namesweekday_nameformat/nameslocale_namesformat/namesLocaleId::from_bcp47_language_taglocaleLocaleId::from_excel_lcidlocaleshort_date_orderlocaleshort_date_patternlocalecurrency_placementlocalecurrency_spacinglocalecurrency_negative_patternlocaleformat_profilelocaledays_from_civillocalecivil_from_dayslocaleymd_from_excel_seriallocaledecimalnumber_textfirst_precisionnumber_textnear_tienumber_textfirst_roundingnumber_textroundednumber_textincrementnumber_textasciinumber_textdays_from_civilported/date_kernelscivil_from_daysported/date_kernelsserial_unbounded_1900ported/date_kernelsymd_1900ported/date_kernelsis_leapported/date_kernelsdays_in_monthported/date_kernelswhole_serialported/date_kernelswholeported/date_kernelsweekday_sunday_one_basedported/date_kernelsremap_weekdayported/date_kernelsweekday_ofported/date_kernelsweekdayported/date_kernelstextported/text_kernelstext_from_strported/text_kernelsdate_integer_floorported/text_kernelspush_singleton_or_originalported/text_kernelspush_upperported/text_kernelsupperported/text_kernelsmeasured_host_readervalue_textmeasured_spacevalue_textreadvalue_textnumbervalue_textdecimalvalue_textfractionvalue_texttokensvalue_textmonth_namedvalue_texttime_atvalue_textfull_yearvalue_textvalid_dayvalue_textthis_yearvalue_textserial_1900value_textdate_ofvalue_textdate_timevalue_text
Argument and result plumbing
failcatalogue/kittext_argcatalogue/kittext_valuecatalogue/kitnumbercoerce
No implementation has been published with a Handbook test suite for this function.
Version differences
No same-input comparison between named Excel builds is recorded for this function here. The documented behaviour below is not a measurement of every Excel release.
Alternatives
WEBSERVICE retrieves data rather than making a link; ENCODEURL encodes text for URL construction.
Named variants
No named variants are recorded yet.
Suggest a correction or contribute an implementation · For agents