UK TeX FAQ -- question label labelcount

### Using labels as counter values

Labels are tempting sources of ‘numbers’ — their most common use, after all, is simply to typeset a number. However, their seeming simplicity is deceptive; the packages babel and hyperref, at least, fiddle with the definition of `\``ref` and `\``pageref` in ways that make

>     \setcounter{foo}{\ref{bar}}

(etc.) not work; thus the technique may not be relied upon.

The solution is to use the refcount package (incidentally, by the author of hyperref). The package provides four commands, all similar to:

>     \usepackage{refcount}
>     ...
>     \label{bar}
>     ...
>     \setcounterref{foo}{bar}

(the other three are `\``addtocounterref`, `\``setcounterpageref` and `\``addtocounterpageref`).

The package also provides a command `\``getrefnumber{`label-name`}` that may be used where a ‘number’ value is needed. For example:

>     ... \footnote{foo bar ...\label{foofoot}}
>     ...
>     \footnotemark[\getrefnumber{foofoot}]

which gives you a second footnote mark reference the the footnote. (There is also a command `\``getpagerefnumber`, of course).

The commands could be used by one determined not to use changepage to determine whether the current page is odd, but it’s probably no more trouble to use the fully-developed tool in this case.

`refount.sty`
  Distributed as part of macros/latex/contrib/oberdiek (or browse the directory); catalogue entry

This answer was added: 2011-09-08

This question on the Web: http://www.tex.ac.uk/cgi-bin/texfaq2html?label=labelcount