Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1
Default VBA Function

I am trying to create my own Excel function in my VBA editor and I need to
know how to refer to the page numbers in any given sheet.

Example: I want the variable PgNum to equal the page number of the cell
that the function is in. In other words, if the function is located on page
7, I want PgNum to equal the value 7.

Thanks

Chris
  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 983
Default VBA Function

A couple of questions spring immediately to mind. What should the function
return if more than one sheet is selected (your print area just expanded)?
What should the function return if the print area is changed (your print area
just shrunk)? What should the function return if the cell is not within the
print area? Even once this is answered I think you have a tricky function
here.


"ChrisA" wrote:

I am trying to create my own Excel function in my VBA editor and I need to
know how to refer to the page numbers in any given sheet.

Example: I want the variable PgNum to equal the page number of the cell
that the function is in. In other words, if the function is located on page
7, I want PgNum to equal the value 7.

Thanks

Chris

  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 176
Default VBA Function

I hope this is helpful.

I think you have to scan thru the PageBreaks to find your page.
If you put this into cell A1
=zPageNum(CELL("row", A1))
this will give you the pagenum.
It is slow because Excel has to paginate the sheet for each use.
It is limited to the leftmost pages (doesn't consider VPageBreaks)
(could be extended, of course).
To its credit, it doesn't use Excel 4 macros (GET.DOCMENT(..))
which has a memory leak (at least with Excel97).

Function zPageNum&(pRow&)
Dim iPage%
For iPage = 1 To ActiveSheet.HPageBreaks.Count
If ActiveSheet.HPageBreaks(iPage).Location.Row - 1 = pRow Then
Exit For
End If
Next iPage
zPageNum = iPage
End Function

ChrisA wrote:
I am trying to create my own Excel function in my VBA editor and I need to
know how to refer to the page numbers in any given sheet.

Example: I want the variable PgNum to equal the page number of the cell
that the function is in. In other words, if the function is located on page
7, I want PgNum to equal the value 7.




----== Posted via Newsfeeds.Com - Unlimited-Uncensored-Secure Usenet News==----
http://www.newsfeeds.com The #1 Newsgroup Service in the World! 120,000+ Newsgroups
----= East and West-Coast Server Farms - Total Privacy via Encryption =----
Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Excel Data Validation/Lookup function does function correcty Kirkey Excel Worksheet Functions 2 May 25th 09 09:22 PM
copy of excel file not showing formulal/function in the function b oaallam Excel Discussion (Misc queries) 4 September 6th 07 01:20 PM
LINKEDRANGE function - a complement to the PULL function (for getting values from a closed workbook) [email protected] Excel Worksheet Functions 0 September 5th 06 03:44 PM
Adding a custom function to the default excel function list DonutDel Excel Programming 3 November 21st 03 03:41 PM
User-Defined Function pre-empting Built-in Function? How to undo???? MarWun Excel Programming 1 August 6th 03 09:31 PM


All times are GMT +1. The time now is 04:43 PM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"