https://okumuralab.org/tex/mod/forum/discuss.php?d=2108
の続きです。
\begin{enumerate}
\item \label{1} Let $1+1=2$.\begin{eqnarray}\label{2}
a+b=c.
\end{eqnarray}
\item \label{3} Let $2+3=5$\begin{eqnarray}\label{4}
c+d=e.
\end{eqnarray}
\end{enumerate}
は\item番号も数式番号も参照できますよね。
でも\step番号を参照しようと
\begin{flalign}
&\step \label{1} \mbox{Let } 1+1=2. a+b=c \label{2} & \\
&\step \label{3} \mbox{Let } 2+3=5 c+d=e \label{4} \\
\end{flalign}
とした所,下記のエラーが出てしまいました。どうすれば解決できますでしょうか?
! Package amsmath Error: Multiple \label's: label '1' will be lost.
See the amsmath package documentation for explanation.
Type H <return> for immediate help.
ある1つの\item内やalign環境などの1行において複数の\labelコマンドを使っても意図どおりにならないかエラーが出ます.
flalign環境の1行で\label{1}と\label{2}を設定してエラーが出ているのはそのためです.
前の質問での本田さんの回答を参考にでっち上げたてみました.
%#!xelatex temp
\documentclass{book}
\usepackage[utf8]{inputenc}
\makeatletter
\newcommand{\fakealignskip}{1em}%fakealign環境の先頭に入る空白の量
%\begin{fakealign}数式\end{fakealign}
%labelを付けたいときオプションに文字列を指定する
%ex.\ref{label-1}で参照したいとき
% \begin{fakealign}[label-1]数式\end{fakealign}
\newenvironment{fakealign}[1][\@empty]{%
\hskip\fakealignskip
\refstepcounter{equation}%
\ifx#1\@empty
\else
\immediate\write\@auxout{\string\newlabel{#1}{{\theequation}{\thepage}}}%
% hyperrefを読み込む可能性がある場合にはちょっと加工が必要
\fi
$\displaystyle%
}{%
$\hfill
(\theequation)%
}%
\renewcommand{\theequation}{\arabic{chapter}.\arabic{section}.\arabic{equation}}%
\@addtoreset{equation}{section}%
\makeatother
\begin{document}
\chapter{hoge}
\section{fuga}
\begin{enumerate}
\item hoge
\begin{fakealign}[hoge:fuga:fake1]
1+2=3
\end{fakealign}
\label{hoge:fuga:enum1}
\item fuga
\label{hoge:fuga:enum2}
\item awawa
\begin{fakealign}[hoge:fuga:fake2]
3+4=7
\end{fakealign}
\label{hoge:fuga:enum3}
\end{enumerate}
\section{awawa}
\begin{enumerate}
\item hoge
\begin{fakealign}
1+2=3
\end{fakealign}
\label{hoge:awawa:enum1}
\item fuga
\label{hoge:awawa:enum2}
\item awawa
\begin{fakealign}[hoge:awawa:fake1]
3+4=7
\end{fakealign}
\label{hoge:awawa:enum3}
\end{enumerate}
\ref{hoge:fuga:enum1}/\ref{hoge:fuga:enum2}/\ref{hoge:fuga:enum3}/\ref{hoge:fuga:fake1}/\ref{hoge:fuga:fake2}
\ref{hoge:awawa:enum1}/\ref{hoge:awawa:enum2}/\ref{hoge:awawa:enum3}/\ref{hoge:awawa:fake1}
\end{document}
flalign環境の1行で\label{1}と\label{2}を設定してエラーが出ているのはそのためです.
前の質問での本田さんの回答を参考にでっち上げたてみました.
%#!xelatex temp
\documentclass{book}
\usepackage[utf8]{inputenc}
\makeatletter
\newcommand{\fakealignskip}{1em}%fakealign環境の先頭に入る空白の量
%\begin{fakealign}数式\end{fakealign}
%labelを付けたいときオプションに文字列を指定する
%ex.\ref{label-1}で参照したいとき
% \begin{fakealign}[label-1]数式\end{fakealign}
\newenvironment{fakealign}[1][\@empty]{%
\hskip\fakealignskip
\refstepcounter{equation}%
\ifx#1\@empty
\else
\immediate\write\@auxout{\string\newlabel{#1}{{\theequation}{\thepage}}}%
% hyperrefを読み込む可能性がある場合にはちょっと加工が必要
\fi
$\displaystyle%
}{%
$\hfill
(\theequation)%
}%
\renewcommand{\theequation}{\arabic{chapter}.\arabic{section}.\arabic{equation}}%
\@addtoreset{equation}{section}%
\makeatother
\begin{document}
\chapter{hoge}
\section{fuga}
\begin{enumerate}
\item hoge
\begin{fakealign}[hoge:fuga:fake1]
1+2=3
\end{fakealign}
\label{hoge:fuga:enum1}
\item fuga
\label{hoge:fuga:enum2}
\item awawa
\begin{fakealign}[hoge:fuga:fake2]
3+4=7
\end{fakealign}
\label{hoge:fuga:enum3}
\end{enumerate}
\section{awawa}
\begin{enumerate}
\item hoge
\begin{fakealign}
1+2=3
\end{fakealign}
\label{hoge:awawa:enum1}
\item fuga
\label{hoge:awawa:enum2}
\item awawa
\begin{fakealign}[hoge:awawa:fake1]
3+4=7
\end{fakealign}
\label{hoge:awawa:enum3}
\end{enumerate}
\ref{hoge:fuga:enum1}/\ref{hoge:fuga:enum2}/\ref{hoge:fuga:enum3}/\ref{hoge:fuga:fake1}/\ref{hoge:fuga:fake2}
\ref{hoge:awawa:enum1}/\ref{hoge:awawa:enum2}/\ref{hoge:awawa:enum3}/\ref{hoge:awawa:fake1}
\end{document}