Man kann es so machen:
\edef\CurrentFirstmark{\firstmark}
\edef\CurrentBotmark{\botmark}
\ifx\CurrentFirstmark\CurrentBotmark ja \else nein \fi
oder so
% Parnums in head
\newcommand\parnumrange{\ifnum\theparnumber>0% NEW
\ifstr{\firstmarks1}{\botmarks1}{(\parnumstyle{\botmarks1})}{(\parnumstyle{\firstmarks1--\botmarks1})}%
\else\fi}
Also scheint zu funktionieren.
Laut @DavidCarlisle könnte es zu Grenzproblemen (bei float pages?) führen. <br>
**MWE:**
[![alt text][1]][1]
\documentclass[ngerman, fontsize=9pt, paper=a5,
twoside,
%open=right, % Dann vor -jedem- Kapitel eine Leerseite
numbers=enddot,
headsepline,plainheadsepline,
]{scrreprt}
\usepackage{amsmath}
% Layout
\usepackage[showframe,
left=15mm, right=15mm % IST
%left=9mm, right=9mm % SOLL
]{geometry}
\usepackage[heightadjust]{marginnote}% marginnotes in head
% Fonts
\setkomafont{pageheadfoot}{\normalfont\footnotesize}
\newcommand\parnumstyle[1]{\textsf{\bfseries\footnotesize#1}}
% Commands
\newcommand\pnref[2][$\uparrow$\,]{#1\parnumstyle{\ref{pn:#2}}}
% Paragraph numbers
\newcounter{parnumber}
\newcommand\parnum[1][\theparnumber]{%
\leavevmode%
\refstepcounter{parnumber}%
\marks1{\theparnumber}%
\marginnote%[\raggedleft\parnumstyle{\theparnumber}\label{pn:#1}]
{\parnumstyle{\theparnumber}\label{pn:#1}}% old: \marginpar
}
% Parnums in head
\newcommand\parnumrange{\ifnum\theparnumber>0% NEW
\ifstr{\firstmarks1}{\botmarks1}{(\parnumstyle{\botmarks1})}{(\parnumstyle{\firstmarks1--\botmarks1})}%
\else\fi%
%
%\edef\CurrentFirstmark{\firstmarks1}% OLD
%\edef\CurrentBotmark{\botmarks1}%
%\ifx\CurrentFirstmark\CurrentBotmark%
%\ifnum\theparnumber>0{(\parnumstyle{\botmarks1})}\else\fi%
%\else%
%\ifnum\theparnumber>0{(\parnumstyle{\firstmarks1--\botmarks1})}\else\fi%
%\fi
}
%
\usepackage[automark]{scrlayer-scrpage}[]
\ohead*{\marginnote{\parnumrange}% range of parnums
\ifstr{\headmark}{}{\rightbotmark}{\headmark}% titles in head
}
% \ofoot*{\pagemark} % auto
\usepackage{mwe}
\usepackage[colorlinks=false, hidelinks]{hyperref}
\begin{document}
\chapter{Erstes Kapitel}
Satz des Pythagoras. \parnum[SdP]
\section{Erster Abschnitt}
\subsection{Erster Unterabschnitt}
\parnumrange
\parnum
\blindtext
\theparnumber
\setcounter{parnumber}{122}%
%\parnum
\blindtext
\theparnumber
\parnum
\blindtext
\theparnumber
test \parnum \par
test \parnum \par
\begin{figure}%[h]
\centering\rule{7cm}{5cm}
\caption{myfigure}
\end{figure}
test \parnum \par
test \parnum \par
\parnum
\blindtext
\parnum
\blindtext
%\parnum
\blindtext
\parnum
\blindtext
\section{Zweiter Abschnitt}
\ref{pn:SdP}
\ref{pn:2}
(\pnref{SdP})
(\pnref{2})
(\pnref{SdP}, \pnref[]{2})
\chapter{Gar keine parnums auf dieser Seite}
\blindtext
\end{document}
___
<h2>Neue Lösung mit `\newmarks{\parnummark}`</h2>
___
\documentclass[ngerman, fontsize=9pt, paper=a5,
twoside,
%open=right, % Dann vor -jedem- Kapitel eine Leerseite
numbers=enddot,
headsepline,plainheadsepline,
]{scrreprt}
\usepackage{amsmath}
% Layout
\usepackage[showframe,
left=15mm, right=15mm % IST
%left=9mm, right=9mm % SOLL
]{geometry}
\usepackage[heightadjust]{marginnote}% marginnotes in head
% Fonts
\setkomafont{pageheadfoot}{\normalfont\footnotesize}
\newcommand\parnumstyle[1]{\textsf{\bfseries\footnotesize#1}}
% Commands
\newcommand\pnref[2][$\uparrow$\,]{#1\parnumstyle{\ref{pn:#2}}}
% Paragraph numbers
\newcounter{parnumber}
\newmarks{\parnummark}
\newcommand\parnum[1][\theparnumber]{%
\leavevmode%
\refstepcounter{parnumber}%
\marks\parnummark{\theparnumber}%
\marginnote%[\raggedleft\parnumstyle{\theparnumber}\label{pn:#1}]
{\parnumstyle{\theparnumber}\label{pn:#1}}% old: \marginpar
}
% Parnums in head
\newcommand\parnumrange{\ifnum\theparnumber>0% NEW
\ifstr{\firstmarks\parnummark}{\botmarks\parnummark}{(\parnumstyle{\botmarks\parnummark})}{(\parnumstyle{\firstmarks\parnummark--\botmarks\parnummark})}%
\else\fi}
\usepackage[automark]{scrlayer-scrpage}[]
\ohead*{\marginnote{\parnumrange}% range of parnums
\ifstr{\headmark}{}{\rightbotmark}{\headmark}% titles in head
}
% \ofoot*{\pagemark} % auto...
\usepackage{mwe}
\usepackage[colorlinks=false, hidelinks]{hyperref}
\begin{document}
\chapter{Erstes Kapitel}
Satz des Pythagoras. \parnum[SdP]
\section{Erster Abschnitt}
\subsection{Erster Unterabschnitt}
\parnumrange
\parnum
\blindtext
\theparnumber
\setcounter{parnumber}{122}%
%\parnum
\blindtext
\theparnumber
\parnum
\blindtext
\theparnumber
test \parnum \par
test \parnum \par
\begin{figure}%[h]
\centering\rule{7cm}{5cm}
\caption{myfigure}
\end{figure}
test \parnum \par
test \parnum \par
\parnum
\blindtext
\parnum
\blindtext
%\parnum
\blindtext
\parnum
\blindtext
\section{Zweiter Abschnitt}
\ref{pn:SdP}
\ref{pn:2}
(\pnref{SdP})
(\pnref{2})
(\pnref{SdP}, \pnref[]{2})
\chapter{Gar keine parnums auf dieser Seite}
\blindtext
\end{document}
[1]: https://texwelt.de/wissen/upfiles/55555555_379.png