yup.
just create a variable for your starting row:
<CFPARAM NAME="StartRow" DEFAULT="1">
then, you can either ask the user for maxrows, or declare your own, then output your query:
<cfoutput QUERY="queryName" STARTROW="#StartRow#" MAXROWS="30">
at the end, you'll want to do your calculations and link to the same page incrementing your startrow. This is what i did incrementing 30:
<cfoutput>
<cfif StartRow IS 1>First 30
<cfelse>
<a href="thispage.cfm">First 30</a>
</cfif>
<cfif (StartRow - 30) GT 0>
<-- <a href="thispage.cfm?startrow=#evaluate(StartRow-30)#">Previous 30</a>
<cfelse>
<-- Previous 30
</cfif>
<CFIF (StartRow + 30) LTE GetContacts.RecordCount><a href="thispage.cfm?startrow=#evaluate(StartRow+30)#">Next 30</a> -->
<cfelse>Next 30 -->
</cfif>
</cfoutput>