Macro Functions Listed Alphabetically

B C E H I K L N Q R S U V

Name
Syntax and Description
%BQUOTE(character-string)
Mask special characters and mnemonic operators in a resolved value at macro execution.
Product: Base SAS
Document: SAS Macro Language Reference for SAS Viya Workbench
%CMY(cyan, magenta, yellow);
creates an RGB color name from numeric CMY component values.
Product: SAS/GRAPH
Document: SAS/GRAPH: Reference for SAS Viya Workbench
%CMYK(cyan, magenta, yellow, black);
creates a CMYK color name from numeric CMYK component values.
Product: SAS/GRAPH
Document: SAS/GRAPH: Reference for SAS Viya Workbench
%CNS(CNS-color-name);
creates a SAS/GRAPH HLS color name from a color-naming scheme (CNS) color name.
Product: SAS/GRAPH
Document: SAS/GRAPH: Reference for SAS Viya Workbench
%EVAL(expression)
Evaluates arithmetic and logical expressions using integer arithmetic.
Product: Base SAS
Document: SAS Macro Language Reference for SAS Viya Workbench
%HLS(hue, lightness, saturation);
creates an HLS color name from numeric HLS component values.
Product: SAS/GRAPH
Document: SAS/GRAPH: Reference for SAS Viya Workbench
%HLS2RGB(HLS-color-name);
creates an RGB color name from an HLS color name.
Product: SAS/GRAPH
Document: SAS/GRAPH: Reference for SAS Viya Workbench
%HSV(hue, saturation, value);
creates an HLS color name from numeric HSV component values.
Product: SAS/GRAPH
Document: SAS/GRAPH: Reference for SAS Viya Workbench
%INDEX(source-string, target-string)
Returns the position of the first character of a string.
Product: Base SAS
Document: SAS Macro Language Reference for SAS Viya Workbench
%KINDEX (source, string)
Returns the position of the first character of a string.
Product: Base SAS
Document: SAS National Language Support (NLS) Reference for SAS Viya Workbench
%KLEFT (text | text expression)
Left-aligns an argument by removing leading blanks.
Product: Base SAS
Document: SAS National Language Support (NLS) Reference for SAS Viya Workbench
%KLENGTH (character string | text expression)
Returns the length of a string.
Product: Base SAS
Document: SAS National Language Support (NLS) Reference for SAS Viya Workbench
%KSCAN (argument, n<,delimiters > )
Search for a word that is specified by its position in a string.
Product: Base SAS
Document: SAS National Language Support (NLS) Reference for SAS Viya Workbench
%KSUBSTR (argument, position<, length> )
Produce a substring of a character string.
Product: Base SAS
Document: SAS National Language Support (NLS) Reference for SAS Viya Workbench
%KUPCASE (character string | text expression)
Convert values to uppercase.
Product: Base SAS
Document: SAS National Language Support (NLS) Reference for SAS Viya Workbench
%LENGTH(character-string)
Returns the length of a string.
Product: Base SAS
Document: SAS Macro Language Reference for SAS Viya Workbench
%NRBQUOTE(character-string)
Masks special characters, including & and %, and mnemonic operators in a resolved value at macro execution.
Product: Base SAS
Document: SAS Macro Language Reference for SAS Viya Workbench
%NRQUOTE(character-string)
Masks special characters, including & and %, and mnemonic operators in a resolved value at macro execution.
Product: Base SAS
Document: SAS Macro Language Reference for SAS Viya Workbench
%NRSTR(character-string)
Masks special characters, including & and %, and mnemonic operators in constant text during macro compilation.
Product: Base SAS
Document: SAS Macro Language Reference for SAS Viya Workbench
%QKLEFT (text | text expression)
Left-aligns an argument by removing leading blanks.
Product: Base SAS
Document: SAS National Language Support (NLS) Reference for SAS Viya Workbench
%QKSCAN (argument, n<,delimiters > )
Search for a word that is specified by its position in a string.
Product: Base SAS
Document: SAS National Language Support (NLS) Reference for SAS Viya Workbench
%QKSUBSTR (argument, position<, length> )
Produce a substring of a character string.
Product: Base SAS
Document: SAS National Language Support (NLS) Reference for SAS Viya Workbench
%QKUPCASE (character string | text expression)
Convert values to uppercase.
Product: Base SAS
Document: SAS National Language Support (NLS) Reference for SAS Viya Workbench
%QSCAN(character-string, n<, charlist<, modifiers>>)
Searches for a word and masks special characters and mnemonic operators.
Product: Base SAS
Document: SAS Macro Language Reference for SAS Viya Workbench
%QSUBSTR(character-string, position<, length>)
Produces a substring and masks special characters and mnemonic operators.
Product: Base SAS
Document: SAS Macro Language Reference for SAS Viya Workbench
%QSYSFUNC(function(arguments)<, format>)
Executes functions and masks special characters and mnemonic operators.
Product: Base SAS
Document: SAS Macro Language Reference for SAS Viya Workbench
%QUOTE(character-string)
Mask special characters and mnemonic operators in a resolved value at macro execution.
Product: Base SAS
Document: SAS Macro Language Reference for SAS Viya Workbench
%QUPCASE(character-string)
Converts a value to uppercase and returns a result that masks special characters and mnemonic operators.
Product: Base SAS
Document: SAS Macro Language Reference for SAS Viya Workbench
%RGB(red, green, blue);
creates an RBG color name from numeric RGB component values.
Product: SAS/GRAPH
Document: SAS/GRAPH: Reference for SAS Viya Workbench
%RGB2HLS(RGB-color-name);
creates an HLS color name from an RGB color name.
Product: SAS/GRAPH
Document: SAS/GRAPH: Reference for SAS Viya Workbench
%SCAN(character-string, n<, delimiters<, modifiers>>)
Searches for a word that is specified by its position in a string.
Product: Base SAS
Document: SAS Macro Language Reference for SAS Viya Workbench
%STR(character-string)
Mask special characters and mnemonic operators in constant text at macro compilation.
Product: Base SAS
Document: SAS Macro Language Reference for SAS Viya Workbench
%SUBSTR(character-string, position<, length>)
Produce a substring of a character string.
Product: Base SAS
Document: SAS Macro Language Reference for SAS Viya Workbench
%SUPERQ(macro-variable-name)
Masks all special characters and mnemonic operators at macro execution but prevents further resolution of the value.
Product: Base SAS
Document: SAS Macro Language Reference for SAS Viya Workbench
%SYMEXIST(macro-variable-name)
Returns an indication of the existence of a macro variable.
Product: Base SAS
Document: SAS Macro Language Reference for SAS Viya Workbench
%SYMGLOBL(macro-variable-name)
Returns an indication as to whether a macro variable is global in scope.
Product: Base SAS
Document: SAS Macro Language Reference for SAS Viya Workbench
%SYMLOCAL(macro-variable-name)
Returns an indication as to whether a macro variable is local in scope.
Product: Base SAS
Document: SAS Macro Language Reference for SAS Viya Workbench
%SYSEVALF(expression<, conversion-type>)
Evaluates arithmetic and logical expressions using floating-point arithmetic.
Product: Base SAS
Document: SAS Macro Language Reference for SAS Viya Workbench
%SYSFUNC(function(arguments)<, format>)
Execute SAS functions or user-written functions.
Product: Base SAS
Document: SAS Macro Language Reference for SAS Viya Workbench
%SYSGET(environment-variable)
Returns the character string that is the value of the environment variable passed as the argument.
Product: Base SAS
Document: SAS Macro Language Reference for SAS Viya Workbench
%SYSMACEXEC(macro-name)
Returns an indication of the execution status of a macro.
Product: Base SAS
Document: SAS Macro Language Reference for SAS Viya Workbench
%SYSMACEXIST(macro-name)
Returns an indication of the existence of a macro definition in the Work.SASMacr or Work.SASMacn catalog.
Product: Base SAS
Document: SAS Macro Language Reference for SAS Viya Workbench
%SYSMEXECDEPTH
Returns the nesting depth of macro execution from the point of the call to %SYSMEXECDEPTH.
Product: Base SAS
Document: SAS Macro Language Reference for SAS Viya Workbench
%SYSMEXECNAME(nesting-level)
Returns the name of the macro executing at a requested nesting level.
Product: Base SAS
Document: SAS Macro Language Reference for SAS Viya Workbench
%SYSPROD(product-code)
Reports whether a SAS software product is licensed at the site.
Product: Base SAS
Document: SAS Macro Language Reference for SAS Viya Workbench
%UNQUOTE(character-string)
During macro execution, unmasks all special characters and mnemonic operators for a value.
Product: Base SAS
Document: SAS Macro Language Reference for SAS Viya Workbench
%UPCASE(character-string)
Convert values to uppercase.
Product: Base SAS
Document: SAS Macro Language Reference for SAS Viya Workbench
%VALIDCHS(dsnm=dataset_name, libnm=libref_name<ENCODING=encoding_name,><COMPATIBLE=encoding_name)>
Validates the character(s) encoding compatibility for data set variables.
Product: Base SAS
Document: SAS National Language Support (NLS) Reference for SAS Viya Workbench
Last updated: June 5, 2026