display pdf from byte array c# : Rotate pdf page few degrees SDK Library project winforms asp.net web page UWP 1200%20macro_examples27-part144

271
'return to original workbook
WB.
Activate
Please note that the above saves the files to the current directory.  You can either set this to the
desired directory before running, or specify the path.  For example, in the following, if fPath has
been set to C:\Temp\, the files would be saved to that directory, not the current directory.
ActiveWorkbook
.
SaveAs
fPath & wS.
Name
14.1.8 Worksheet.Copy Bug 
-
Public Variables Reset
If you do a worksheet copy, you may lose the settings of public variables. Apparently this is a
known bug.  The problem is with tracing through a worksheet copy and it also resets all module
level variables.
The fix is to turn off the "Require Variable Declaration" option underTools,Options from the
Visual Basic Editor.  You can still haveOption Explicit in the module itself.  However, you will
need to manually type it in.
For more information, see the following Microsoft article:
http://support.microsoft.com/support/kb/articles/q177/8/34.asp
XL: Public Variables May Be Lost When You Copy a Worksheet
14.1.9 How To Delete Sheets
The best way to delete sheets is by name.  For example:
'turn off error handling in case the sheet does not exist
On Error Resume Next
Application.DisplayAlerts = False
Sheets("D_Location").Delete
Sheets("D_Samples").Delete
Sheets("D_Results").Delete
On Error GoTo 0
Application.DisplayAlerts = True
On Error GoTo 0 causes normal error checking to resume,
If you delete sheets using index numbers, you should delete from the last sheet to the first.  If you
do it from 1 to N, this will most likely cause Excel to crash as the index numbers will ultimately
refer to sheets that do not exist.  In the least, it will crash the code
The wrong way to delete all empty sheets:
Rotate pdf page few degrees - 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#
how to rotate one page in a pdf file; pdf rotate single page
Rotate pdf page few degrees - 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
rotate all pages in pdf; how to rotate one pdf page
272
Sub Delete_All_Empty_Sheets_The_Wrong_Way()
Dim I, J
I = Worksheets.Count
For J = 1 To I
If Application.CountA(Worksheets(J).Cells) = 0 Then _
Worksheets(J).Delete
Next J
End Sub
The right way to delete all empty sheets:
Sub Delete_All_Empty_Sheets_The_Right_Way()
Dim I, J
I = Worksheets.Count
For J = I To 1 Step 
-
1
If Application.CountA(Worksheets(J).Cells) = 0 Then _
Worksheets(J).Delete
Next J
End Sub
In the aboveApplication.CountA returns the number of cells with entries.  Also, the above will
delete sheets that contain objects such as embedded charts.
14.1.10 Deleting Sheets Without Confirmation
To prevent the Excel warning message from appearing when you delete a sheet, do the following:
Application.DisplayAlerts = False
Worksheets("sheet1").Delete
Application.DisplayAlerts = True
As the above example illustrates, you should setDisplayAlerts back toTrue.  Otherwise Excel
may not prompt you to save a modified file when you manually close Excel.
14.1.11 Getting The Exact Number Of Worksheets In A
Workbook
WorkSheets.Count returns the number of worksheets in the active workbook:
Sub CountSheets()
MsgBox "Number of Worksheets: " &WorkSheets.Count
End Sub
If you qualifyWorkSheets with a workbook, then you will get the number of worksheets in that
workbook versus the number in the active workbook.
14.1.12 How To Determine If A Sheet Exists In A Workbook
The following functions returnsTrue if a specific worksheet exists, andFalse if it does not.  It
takes two arguments:  the name of the workbook, and the name of the sheet.
VB.NET Image: Using VB.NET Web Image Viewer to Process Web Images
types, including JPEG, PNG, GIF, BMP, TIFF, PDF, Word. btnRotate270 API can be used to rotate currently displayed image or document page 90 degrees
rotate pdf page permanently; save pdf rotated pages
Process Images in Web Image Viewer | Online Tutorials
Commonly used document types are supported, including PDF, multi-page TIFF This JavaScript API is used to rotate the current image / page 90 degrees
rotate pdf pages by degrees; pdf rotate single page reader
273
Function WorksheetExists(WBName As String, _
WSName As StringAs Boolean
On Error GoTo EndMacro
If Workbooks(WBName).Worksheets(WSName).Name <> "" Then
WorksheetExists = True
Exit Function
End If
EndMacro:
WorksheetExists = False
End Function
For example
If WorksheetExists("book1.xls", "Contracts") Then
'code to execute if sheet does not exist
End If
Or
If WorksheetExists("book1.xls", "Contracts") Then
'code to execute if sheet does not exist
Else
'code to execute if sheet exists
End If
The following is an even simpler version of the above function:
Function bWorksheetExists(WBName As String, _
WSName As StringAs Boolean
On Error Resume Next
bWorksheetExists = _
(Workbooks(WBName).Worksheets(WSName).Name = WSName)
End Function
14.1.13 How To Determine If A Worksheet Is Empty
Application.CountA(Sheets("Sheet1").Cells) will return zero if all the cells on the sheet is
empty.  To test on the active sheet, just removeSheets("Sheet1").
ActiveSheet.ChartObjects.Count will return the number of embedded charts on the worksheet.
It is possible for all cells to be empty but for a sheet to contain embedded charts.
14.1.14 How To See If Worksheet Is Empty
The following determines if a worksheet is empty:
C# Image: C# Image Web Viewer Processing Tutorial; Process Web Doc
In order to rotate a current web image or by editing your C# project web page Default.aspx provide powerful & profession imaging controls, PDF document, tiff
rotate pages in pdf permanently; how to permanently rotate pdf pages
VB.NET Image: Generate GS1-128/EAN-128 Barcode on Image & Document
resolution barcode.Rotate = Rotate.Rotate0 'set rotate barcode.DrawBarcode Its supported document types are PDF, Word and EAN-128 barcode on multi-page TIFF/PDF
rotate individual pages in pdf reader; pdf rotate just one page
274
If Application.CountA(ActiveSheet.UsedRange) = 0 Then
'empty
Else
'Not empty
End If
14.1.15 Clearing A Worksheet On Open
The following macros run when a workbook is manually opened and clear ranges on a sheet:
Sub Auto_Open
WorkSheets("sheet1").UsedRange.Clear
End Sub
Or
Sub Auto_Open()
CertainRow = 15
With WorkSheets("Sheet1")
.Range(.Cells(CertainRow, 1), _
.Cells(Rows.Count, 1)).EntireRow.Clear
End With
End Sub
14.1.16 How To Loop Through Your Sheets
A worksheet is a member of the Worksheets collection. A sheet is a member of the more general
Sheets collection.  TheWorksheets collection is a subset ofSheets collection.  Other subsets of
theSheets collection areCharts,Dialogsheets, andModules.
The following examples illustrate how to loop through these collections.  All use a For…Next
loop construction.
To loop through just the worksheets in the active workbook use code like the following.  Each
time through the loop, the variable ws is assigned to a new worksheet.  This variable can be used
to refer to that worksheet in the loop.
Dim ws As Worksheet
For Each ws In Worksheets
'do something with sheet ws.  For example the following statement
'displays the sheet's name
MsgBox ws.Name
Next
VB Imaging - Linear ITF-14 Barcode Generator
Spend a few seconds creating ITF-14 barcode in Resolution = 96 'set rotation barcode.Rotate = Rotate.Rotate0 barcode to Create ITF-14 in Certain PDF Page Area.
save pdf after rotating pages; rotate pages in pdf and save
C# TIFF: Create Linear and 2D Barcodes on TIFF Document Using C#
C# TIFF PDF - 417 Creating, C# TIFF ISBN Creating. Creator Add-on for TIFF allows C# users to generate GS1-128/EAN-128 barcode on TIFF file page with high print
rotate pages in pdf; pdf reverse page order online
275
The following loops through all sheets in a workbook and prints them out.  In this case the
workbook is not the active workbook.  Placing the variable sh, which is used in theFor
statement, after theNext statement is optional but allows Visual Basic to match it up with theFor
statement as a form of error checking.
Dim sh As Sheet
For Each sh In Workbooks("Estimate.Xls")
sh.Printout
Next sh
Please note the above will printout all sheets, including modules and Dialogsheets.  To restrict it
to just worksheets or charts, do the following, which uses theTypeName function to return the
type of sheet.  Note thatLCase is used to return an all lower case string so that the comparison is
lower case to lower case.
Dim sh As Sheet
For Each sh In Workbooks("Estimate.Xls")
If LCase(TypeName(sh)) = "worksheet" Or _
LCase(TypeName(sh)) = "chart" Then sh.Printout
Next sh
14.1.17 Sorting Sheets By Name
The following macro that will sort the worksheets in the active workbook in ascending order:
Sub SortSheetbyName()
Dim numberOfSheets As Integer
Dim sheetPosition As Integer
Dim I As Integer
numberOfSheets =ActiveWorkbook.Worksheets.Count
sheetPosition = numberOfSheets
Do
If sheetPosition = 1 Then Exit Do
For I = 1 To sheetPosition 
-
1
IfSheets(I).Name > Sheets(I + 1).Name Then
Sheets(I + 1).Movebefore:=Sheets(I)
End If
NextI
sheetPosition = sheetPosition 
-
1
Loop
End Sub
14.1.18 Creating A List Of Sheets In A Workbook
The following code creates a list of all the worksheets in a workbook and writes it to a sheet in a
new workbook.  The new workbook only has one sheet in it
276
Sub ListSheets()
Dim originalSetting As Integer
Dim wb As Workbook
Dim oS As Object
Dim I As Integer
'create an object variable that refers to the active workbook
Set wb = ActiveWorkbook
'create a new workbook with just one sheet
'the new workbook becomes the active workbook.
'The variable wb now refers to the previous active workbook
originalSetting = Application.SheetsInNewWorkbook
Application.SheetsInNewWorkbook = 1
Workbooks.Add
Application.SheetsInNewWorkbook = originalSetting
'rotate through each sheet in the original workbook
For Each oS In wb.Sheets
increment I by one each time through
I = I + 1
'write the name of the sheet to a cell, starting with cell A1 and
'going down column A
Cells(I, 1).Value = oS.Name
Next
End Sub
14.1.19 Protecting And UnProtecting Worksheets
Its easy to use Visual Basic to protect and unprotect your sheets.  For example, you may want to
leave a sheet protected and only allow your macro to modify the sheet.  The following illustrates
the basic technique to use:
Sub ProtectSheet()
ActiveSheet.Protect password:="anystring"
End Sub
Sub UnProtectSheet()
ActiveSheet.Unprotect password:="anystring"
End Sub
To determine if a worksheet is protected, check the value of theProtectContents property:
277
If Sheets("mysheet").ProtectContents Then
Msgbox "Protected"
End If
14.1.20 Using Controls On A Worksheet
You can assign a name to a command button (created from the Forms toolbar) by typing a name
into the Name box when the shape is selected. (The Name box is at the left side of the formula
bar – it normally displays the address of the active cell.)
Or, in VBA, you can assign a name with code like
ActiveSheet.Shapes(1).Name = "SomeName"
Once you've assigned a name, you can use that name as the index into the Shapes collection,
which contains the buttons:
ActiveSheet.Shapes("SomeName").TextFrame.Characters.Text = _
"BB Button"
14.1.21 Protecting All The Sheets In A Workbook
The following code shows how to protect all the sheets in a workbook:
Sub ProtectingSheets()
Dim S As Object
For Each S In Sheets
'unprotect the sheets first
S.Unprotect password:="password"
'protect the sheets and any objects on the sheet
S.Protect password:="password", DrawingObjects:=True
Next
End Sub
The following is a more elaborate example that prompts the user for a password.
Sub AskForPasswordAndProtectSheets()
Dim S As Object
Dim oldWord As String, pWord1 As String, pWord2 As String
'prompt for old password, but do not exit if none; allows for first use
oldWord = InputBox("Enter the old password")
'prompt for new passwords, exit if not entered
278
pWord1 = InputBox("Enter a new password")
If pWord1 = "" Then Exit Sub
pWord2 = InputBox("please re
-
enter the new password")
If pWord2 = "" Then Exit Sub
'make certain passwords are identical
If InStr(1, pWord2, pWord1, 0) = 0 Or _
InStr(1, pWord1, pWord2, 0) = 0 Then
MsgBox "You entered different passwords. No action taken"
Exit Sub
End If
For Each S In Sheets
'first unprotect the sheet using the old password
On Error GoTo errorTrap1
If oldWord <> "" Then S.Unprotect password:=oldWord
'protect the sheet using the new password
On Error GoTo errorTrap2
S.Protect password:=pWord1, DrawingObjects:=True
Next
MsgBox "All sheets protected."
Exit Sub
errorTrap1:
MsgBox "sheet " & S.Name & _
" could not be unprotected.  Activity halted."
Exit Sub
errorTrap2:
MsgBox "sheet " & S.Name & _
" could not be protected.  Activity halted."
Exit Sub
End Sub
14.1.22 A Simple Modify All Worksheets Example
The following is a simple example that modifies each worksheet in the active workbook.  It
inserts a column in each sheet, and then inserts a formula in that column that sums the cells to the
left in row 5.
This example illustrates using the With..End  With statement, and usingWorksheets instead of
Sheets so that only worksheets are modified.
Sub Modify_Sheets()
Dim I As Integer
'rotate through all the worksheets by getting the count of worksheets
279
For I = 1 To Worksheets.Count
With ActiveWorkbook.Worksheets(I)
'please note the periods in front of Columns and Range.
'These connect these keywords back to the object that
'follows the above With keyword.
.Columns("D").Insert
.Range("d5") = "=sum(a5:c5)"
End With
Next I
End Sub
14.1.23 Inserting The Current Date In All Worksheets
If you need to update a particular cell on each worksheet in a workbook, then you can use code
like the following to accomplish this task:
Sub ApplyDateValue()
Dim mydate As Date
Dim a As Integer
mydate = Date
For a = 1 To ActiveWorkbook.Worksheets.Count
Worksheets(a).Range("K4").Value = mydate
Next a
End Sub
You can also write the code this way, which is a bit more efficient, and refers to the sheets
directly
Sub ApplyDateValue()
Dim ws As Worksheet
Dim myDate As Date
myDate = Date
For Each ws In Worksheets
ws.Range("K4").Value = myDate
Next ws
End Sub
Notice that neither example activates or selects the sheet.  It is not necessary to do so, and in fact
doing so would slow down the macro.
14.1.24 Making All Sheets Visible
The following code shows how to make all sheets in a workbook visible.
Sub MakeAllVisible()
Dim oSheet As Object
For Each oSheet In Sheets
oSheet.Visible = True
Next
End Sub
280
14.1.25 Preventing A User From Adding A Sheet
If you put the following code in the workbook code module, it will prevent the user from adding
a new worksheet.
Private Sub Workbook_NewSheet(ByVal Sh As Object)
Application.DisplayAlerts = False
MsgBox "New sheets may not be added.  " & _
"Sheet will be deleted"
Sh.Delete
Application.DisplayAlerts = True
End Sub
14.1.26 Using A Worksheet's Code Name
To always activate or work with the same sheet regardless of its tab name, you can use its Code
Name which doesn't change when the sheet is renamed.  For example:
Assuming you have a sheet with Name "SheetName" and CodeName "SheetCodeName", these
commands work identically
WorkSheets("SheetName").Activate
'this is the same as:
SheetCodeName.Activate
To change the code name of a worksheet, go into Visual Basic, display the project explorer
(Ctrl+R), select the worksheet, and edit the name property (F4) of the worksheet.
14.1.27 Changing A Worksheet's CodeName
You can change a worksheet'sCodeName using:
ActiveWorkbook.VBProject.VBComponents(ActiveSheet.CodeName) _
.Properties("_CodeName") = "NewCodeName"
or:
ThisWorkbook.VBProject.VBComponents("Sheet1").Name = "AnyName"
14.1.28 Checking If A Control Exists On A Worksheet
When ActiveX controls are on the worksheet, then they part of the OLEObject collection and the
shapes collection.
Sub FindImagecontrol()
For Each OleOb In ActiveSheet.OLEObjects
If TypeOf OleOb.Object Is MSFORMS.Image Then
Documents you may be interested
Documents you may be interested