88 | Chapter2, Hacking Excel’s Built-in Features
#36
Boldface Excel Subtotals
HACK
“Use a formula to determine which cells to format” (for pre-2007, select For-
mat
Conditional Formatting…
select Formula Is) and add the following
formula under “Format values where this formula is true”:
=$A1="Grand Total"
Click the Format button and then the Font tab, and select Bold as the Font
Style. Click OK, and then click NewRule to add a second format condition
(pre-2007, click Add). Select “Format values where this formula is true”
(Formula Is in older versions) and add the following formula:
=RIGHT($A1,5)="Total"
Click the Format button and then the Font tab. On this tab, select Bold
Italic as the Font Style. Select Single from Underline, click OK, and then
click OK again.
For Excel 2007 users, when Rules are added to Conditional
Formatting, they are added so that the rule you first create is
at the bottom of the list, then the next rule you create is on
top of this and so forth. This means that the last rule you
create will be applied first (the reverse is true for pre-2007
versions). For this hack you will need to change the order
that the rules are applied in, so click on the first rule thatyou
made
(=$A1="Grand Total"
) and press the “Move up” button.
Next, select the SubTotal Button under Outline options on the Data tab,
(pre-2007, Data
Subtotals) accept the defaults, and click OK.
Your worksheet data should now look likeFigure2-22.
You can use any format you want to make your subtotals easier to read.
Figure 2-22. Worksheet data with more prominent grand total
Pdf rotate all pages - rotate PDF page permanently in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Empower Users to Change the Rotation Angle of PDF File Page Using C#
pdf expert rotate page; pdf rotate single page
Pdf rotate all pages - VB.NET PDF Page Rotate Library: rotate PDF page permanently in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
PDF Document Page Rotation in Visual Basic .NET Class Application
pdf rotate pages separately; saving rotated pdf pages
Convert Excel Formulas and Functions to Values #37
Chapter2, Hacking Excel’s Built-in Features | 89
HACK
H A C K
#37
Convert Excel Formulas and Functions to Values
Hack #37
Most Excel spreadsheets contain formulas. Sometimes you may want to
force only the result of a formula to occupy a cell, instead of leaving the
formula in place, where it will change if/when the data it references changes.
You can do this manually in a couple of ways, or you can use a macro that
will make the job a breeze. Let’s look at the manual methods first.
Using Paste Special
You can copy the formula results and still leave the original formulas in
place using Excel’s
Paste Special
tool. Assume you have formulas residing
in cells A1:A100. Select this range, select Copy (you can do this from the
Clipboard options on the Home tab or right-click), and then select the start-
ing cell for the mirror results. Select Clipboard
Paste
Paste Values (or
right-click and select Paste Special
Values) and click OK.
If you want to override the original formulas with their results, select the for-
mula range and select Copy. With the formula range still selected, select
Paste
Paste Values (or right-click and select Paste Special
Values) and
then click OK.
Using Copy Here As Values Only
You also can copy formula results and still leave the original formulas in
place by using a pop-up menu that many users don’t even know exists.
Select the formula range and right-click the right or left border of the selec-
tion (in other words, anywhere on the selection border except for the fill
handle). While holding down the right mouse button (or Ctrl-clicking on a
Macintosh), drag to the destination, release the right mouse button, and
click Copy Here as Values Only from the resulting pop-up shortcut menu.
You can also override the original formulas with their results. Select the for-
mula range, then right-click the right or left border of the selection (again, any-
where in the selection except for the fill handle). While pressing the right
mouse button (or Ctrl-clicking), drag over one column to the right or left and
then back to the starting range, release the right mouse button, and click Copy
Here as Values Only from the resulting pop-up shortcut, shown inFigure2-23.
Using a Macro
If you frequently convert cells containing formulas and functions to their
values, you can use this simple macro:
Sub ValuesOnly()
Dim rRange As Range
VB.NET PDF Page Delete Library: remove PDF pages in vb.net, ASP.
NET example for how to delete several defined pages from a PDF document Dim detelePageindexes = New Integer() {1, 3, 5, 7, 9} ' Delete pages. All Rights Reserved
pdf rotate single page and save; change orientation of pdf page
VB.NET PDF Page Insert Library: insert pages into PDF file in vb.
doc2.InsertPages(pages, pageIndex) ' Output the new document how to use VB to insert an empty page to a specific location of current PDF file All Rights Reserved
pdf rotate page; how to permanently rotate pdf pages
90 | Chapter2, Hacking Excel’s Built-in Features
#37
Convert Excel Formulas and Functions to Values
HACK
On Error Resume Next
Set rRange = Application.InputBox(Prompt:="Select the formulas", _
Title:="VALUES ONLY", Type:=8)
If rRange Is Nothing Then Exit Sub
rRange = rRange.Value
End Sub
To use this macro, select Developer
Code
Visual Basic (pre-2007, Tools
Macro
Visual Basic Editor) or Alt/Option-F11. While in the VBE, select
Insert
Module to insert a standard module. Enter the preceding code
directly into the module. Click the window’s Close button, or press Alt/
c
-Q
to get back to Excel. Select Developer
Code
Macros (pre-2007, Tools
Macro
Macros) or Alt/Option-F8, select
ValuesOnly
, and then click
Options to assign a shortcut key to the macro. When you use the macro you
will be presented with an InputBox and asked to select a range that contains
Figure 2-23. Pop-up shortcut menu
C# PDF Page Delete Library: remove PDF pages in C#.net, ASP.NET
1. public void DeletePages(int[] pageIndexes). Description: Delete specified pages from the input PDF file. Parameters: All Rights Reserved.
how to rotate one page in pdf document; rotate pages in pdf online
C# PDF Page Insert Library: insert pages into PDF file in C#.net
how to merge PDF document files by C# code, how to rotate PDF document page to insert empty pages to a specific location of current PDF file. All Rights Reserved
permanently rotate pdf pages; rotate pages in pdf
Automatically Add Data to a Validation List #38
Chapter2, Hacking Excel’s Built-in Features | 91
HACK
your formulas. The selected range address will show automatically in the
InputBox, and all you need to do to make the conversion is click OK.
H A C K
#38
Automatically Add Data to a Validation List
Hack #38
The validation feature in Excel is great,but there is one keything it cannot do
(without the following hack): automatically add a new entry to the list being
used as the source for the validation list. This hack allows a user to add to
the list, showing a message box and giving the user an option to Add or
Cancel. Duplicates are ignored.
If you have used validation, you knowit’s a neat feature. Perhaps most
impressive is its ability to add a list to any cell from which the user can then
select. Wouldn’t it be nice if, when you enter a new name in a validated cell,
Excel automatically adds it to the list? This is possible, thanks to the follow-
ing hack.
Assume you have a list of names in the range A1:A10, as inFigure2-24.
These names represent employees in a company. It is not uncommon for
newemployees to be added to such a list, but at present, the only way to
achieve this is to add the newnames to the end of the list and then select the
new names from the list in the validated cell.
To overcome this limitation, followthese steps. In cell A11, enter the follow-
ing formula and copy it down to row 20, as inFigure2-25 (note the relative
reference of A10):
=IF(OR($D$1="",COUNTIF($A$1:A10,$D$1)),"x",$D$1)
Now, select Formulas
Defined Names
Define Name (pre-2007, Insert
Name
Define), and type
MyNames
in the Names: box. In the Refers To: box,
enter the following formula, as shown inFigure2-26, and then click OK
(pre-2007, click Add then click OK):
=OFFSET(Sheet1!$A$1,0,0,COUNTA(Sheet1!$A:$A),1)
Figure 2-24. Workbook set up for validation list
VB.NET PDF - WPF PDF Viewer for VB.NET Program
Users can rotate PDF pages, zoom in or zoom out PDF pages and WPF PDF Viewer for VB.NET is a PDF utility annotation rectangle, polygon and so on are all can be
how to rotate all pages in pdf; pdf save rotated pages
C# WPF PDF Viewer SDK to view PDF document in C#.NET
Compatible with all Windows systems and supports .NET Framework 2.0 & above versions. A powerful .NET WPF component able to rotate one PDF page or whole PDF
pdf reverse page order preview; rotate pdf page permanently
92 | Chapter2, Hacking Excel’s Built-in Features
#38
Automatically Add Data to a Validation List
HACK
Select cell D1, select Data
Data Tools
Data Validation (pre-2007, select
Data
Validation). Choose List from the Allow: box, and in the Source:
box, type
=MyNames
, ensuring that the In-Cell drop-down box is checked.
Click the Error Alert page tab and uncheck the
Show error alert after
invalid data is entered
box. Nowclick OK. You’ll see the result in
Figure 2-27.
Figure 2-25. List with formula added to rows A11:A20
Figure 2-26. Making the list dynamic
VB.NET PDF - View PDF with WPF PDF Viewer for VB.NET
Compatible with all Windows systems and supports .NET Framework 2.0 & above versions. Able to rotate one PDF page or whole PDF while in viewing.
how to rotate pdf pages and save; how to rotate a page in pdf and save it
C# TIFF: How to Rotate TIFF Using C# Code in .NET Imaging
VB.NET How-to, VB.NET PDF, VB.NET Word, VB.NET Excel, VB TIFFPage)doc.GetPage(0); page.Rotate(RotateOder.Clockwise90); doc.Save(@"C:\rotate.tif All Rights Reserved
rotate pdf page and save; how to reverse pages in pdf
Automatically Add Data to a Validation List #38
Chapter2, Hacking Excel’s Built-in Features | 93
HACK
Right-click the Sheet Name tab and select ViewCode. Enter the following
code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim lReply As Long
If Target.Cells.Count > 1 Then Exit Sub
If Target.Address = "$D$1" Then
If IsEmpty(Target) Then Exit Sub
If WorksheetFunction.CountIf(Range("MyNames"), Target) = 0 Then
lReply = MsgBox("Add " & Target & " to list", vbYesNo +
vbQuestion)
If lReply = vbYes Then
Range("MyNames").Cells(Range("MyNames").Rows.Count + 1,
1) = Target
End If
End If
End If
End Sub
Close the window to get back to Excel and save your workbook. Now select
cell D1, type in any name that is not part of the list, and press Enter. Select
cell D1 again and look at the list. The newname should be part of it, as
shown inFigure2-28.
If you want to add more than 10 names to your list, just copy the formula
down past row 20.
Figure 2-27. The list with validation added to cell D1
94 | Chapter2, Hacking Excel’s Built-in Features
#39
Hack Excel’s Date and Time Features
HACK
H A C K
#39
Hack Excel’s Date and Time Features
Hack #39
Excel’s date and time feature is great if you’re creating simple spreadsheets,
but they can cause problems for more advanced projects. Fortunately, there
are ways to get around Excel’s assumptions when they don’t meet your
needs.
Excel (by default) uses the 1900 date system. This means the date 1 Jan
1900 has an underlying numeric value of 1, and that 2 Jan 1900 has a value
of 2, and so forth. These values are called serial values in Excel, and they
enable you to use dates in calculations.
Times are very similar, but Excel treats times as decimal fractions, with 1
being the time 24:00 or 00:00. 18:00 has a numeric value of 0.75 because it
is three-quarters of 24 hours.
To see the numeric value of a date and/or a time, format as General the cell
containing the value. For example, the date and time 3/May/2007 3:00:00 PM
has a numeric value of 39205.625, with the number after the decimal repre-
senting the time, and the 39205 representing the serial value for 3/May/2007.
Adding Beyond 24 Hours
You can add times by using the
SUM
function (or a simple plus sign). There-
fore,
=SUM(A1:A5)
would result in Total Hours if A1:A5 contained valid
times. There is, however, a big “Gotcha!” Unless told otherwise, Excel will
not add past 24 hours. This is because when a time value exceeds 24 hours
(a true value of 1), it rolls into a newday and starts again. To force Excel
not to default back to a newday after 24 hours, you can use a cell format of
37:30:55
or a custom format of
[h]:mm:ss
.
Figure 2-28. The list after adding a new entry to cell D1
Hack Excel’s Date and Time Features #39
Chapter2, Hacking Excel’s Built-in Features | 95
HACK
You can use a similar format to get the total minutes or seconds of a time.
To get the total minutes of the time 24:00, for instance, format the cell as
[m]
and you will get 1440. To get the total seconds, use a custom format of
[s]
and you get 86400.
Time and Date Calculations
If you want to use these real time values in other calculations, keep the
“magic” numbers listed inTable2-6 in mind.
Once you are armed with these magic numbers and the preceding informa-
tion, you’ll find it’s much easier to manipulate times and dates. Take a look
at the following examples to see what we mean (assume the time is in cell
A1).
If you have the number 5.50 and you really want 5:30 or 5:30 a.m., use this:
=A1/24
and format as needed.
If it should be 17:30 or 5:30 p.m., use this:
=(A1/24)+0.5
To achieve the opposite—that is, a decimal time from a true time—use this:
=A1*24
If a cell contains the true date and the true time (as in 22/May/07 15:36) and
you want only the date, use this:
=INT(A1)
To get only the time, use this:
=A1-INT(A1)
or:
=MOD(A1,1)
and format as needed.
Table 2-6. Magic numbers for time and date calculations
Number
Meaning
60
60 minutes or 60 seconds
3600
60 secs * 60 mins
24
24 hours
1440
60 mins * 24 hours
86400
24 hours * 60 mins * 60 secs
96 | Chapter2, Hacking Excel’s Built-in Features
#39
Hack Excel’s Date and Time Features
HACK
To find out the difference between two dates, use this:
=DATEDIF(A1,A2,"d")
where A1 is the earlier date.
This will produce the number of days between two dates. It will also accept
m
or
y
as the result to return—that is,
Months
or
Years
.(The
DATEDIF
function
is undocumented in Excel 97 and is really a Lotus 123 function.)
If you do not knowin advance which date or time is the earliest, the
MIN
and
MAX
functions can help. For example, to be assured of a meaningful result,
you can use this:
=DATEDIF(MIN(A1,A2),MAX(A1,A2),"d")
Also, when working with times, you might need to account for start time
and end time, with the start time being 8:50 PM. in cell A1, and the end
time being 9:50 AM. in cell A2. If you subtract the start time from the end
time
(=A2-A1)
,you get
######
,as Excel, by default, cannot work with nega-
tive times. See“DisplayNegativeTimeValues”
[Hack #87]
for more on howto
work with negative times.
Alternatively, you can work around this in these two ways, ensuring a posi-
tive result:
=MAX(A1:A2)-MIN(A1:A2)
or (you may need to format the cell as a time if it defaults to a numeric
format):
=A1-A2+IF(A1>A2,1)
You can also tell Excel to add any number of days, months, or years to any
date:
=DATE(YEAR(A1)+value1,MONTH(A1)+value2,DAY(A1)+value3)
To add one month to a date in cell A1, use this:
=DATE(YEAR(A1),MONTH(A1)+1,DAY(A1))
Excel also offers some additional functions that are part of the Analysis
ToolPak. Go to the Office button
Excel Options
Add Ins, select the
Analysis ToolPak, and click Go. Enable the Analysis ToolPak checkbox, and
click OK (pre-2007, select Tools
Add-Ins, enable the Analysis ToolPak
checkbox, and then click Yes if you are asked if you want to install it).
You can find all of these functions under the Formula tab in Functions
Library
Date & Time (pre-2007, Paste Function dialog in the Function
Wizard). The functions are easy to use; the hard part is knowing they’re
available and turning them on.
Hack Excel’s Date and Time Features #39
Chapter2, Hacking Excel’s Built-in Features | 97
HACK
By default, this Add-In is not installed in Excel 2007. To
install it, go to the Office button
Excel Options
Add
Ins, select the Analysis ToolPak, and click Go. Enable the
Analysis ToolPak checkbox, and click OK.
Real Dates and Times
Sometimes spreadsheets with imported data (or data that was entered incor-
rectly) end up with dates and times being seen as text and not real numbers.
You can spot this easily in Excel by widening the columns a bit, selecting a
column, right-clicking and selecting Format
Cells
Alignment, and then
changing the Horizontal alignment to General (the default format for cells).
Click OK and examine your dates and times closely. If any are not right-
aligned, Excel doesn’t think they are dates.
To fix this, first copy any empty cell, and then select the column and format
as any Date and/or Time format. While the column is still selected, right–
click and select Paste Special
Value
Add. This will force Excel to con-
vert any text dates and times to real dates and times. You might need to
change the format again. Another simple method is to reference the cell(s)
like this:
=A1+0 or A1*1
A Date Bug?
Excel incorrectly assumes that the year 1900 was a leap year. This means
Excel’s internal date system believes there was a 29 Feb 1900, when there
wasn’t! The most surprising part is that Microsoft did this intentionally, or
so they say! More information is available at http://support.microsoft.com/
default.aspx?scid=kb;EN-US;q181370.
Here are some additional good links to information on dates and times:
HOW TO: Use Dates and Times in Excel 2000
http://support.microsoft.com/default.aspx?scid=kb;en-us;Q214094#6
Text or Number Converted to Unintended Number Format
http://support.microsoft.com/default.aspx?scid=kb;en-us;Q214233
Maximum Times in Microsoft Excel
http://support.microsoft.com/default.aspx?scid=kb;en-us;Q214386
Dates and Times Displayed as Serial Numbers When Viewing Formulas
http://support.microsoft.com/default.aspx?scid=kb;en-us;Q241072
Documents you may be interested
Documents you may be interested