display pdf winform c# : Rotate single page in pdf reader application software tool html windows asp.net online 7053154973-Excel%202007%20VBA%20Programmers%20Reference%20-%20Wrox%20200756-part684

Opening Web Pages as Workbooks
The simplest solution is to open the entire web page as if it were a workbook, then scan the sheet for the
required information, such the USD/GBPexchange rate:
Sub OpenUSDRatesPage()
Dim oBk As Workbook
Dim oRng As Range
‘Open the rates pages as a workbook
Set oBk = Workbooks.Open(“http://www.x-rates.com/d/USD/table.html”)
‘Find the British Pounds entry
Set oRng = oBk.Worksheets(1).Cells.Find(“British Pound”)
‘Read off the exchange rate
MsgBox “The USD/GBP exchange rate is “ & oRng.Offset(0, 1).Value
End Sub
The problem with using this approach is that you have to load the entire web page (including graphics,
banners, and so on), which may have much more information than you want. The irrelevant data can
greatly slow down the speed of data retrieval.
Using Web Queries
Web Queries were introduced in Excel 97 and have been enhanced in each subsequent version of Excel.
They enable you to retrieve a single table of information from a web page, with options to automatically
refresh the data each time the workbook is opened, or at frequent intervals.
One of the problems with Web Queries is that Excel uses the thousands and decimal separators specified
in the Windows Regional Settings when attempting to recognize numbers in the page. If the exchange
rate web page were retrieved in many European countries, the period would be treated as a thousands
separator, not a decimal separator, resulting in exchange rates that are many times too large. In Excel
2002, Microsoft added three properties to the Applicationobject to temporarily override the settings
used when recognizing numbers:
Application.DecimalSeparator—The character to use for the decimal separator
Application.ThousandsSeparator—The same for the thousands separator
Application.UseSystemSeparators—Whether to use the Windows separators or Excel’s
Using these properties, you can set Excel’s separators to match those on the web page, perform the
query, and then set them back again. Web Queries could not be used reliably in versions prior to Excel
2002 in countries that used non-U.S. decimal and thousands separators. If you want to use the Web
Query’s automatic refreshing options, you have to set these separators in the BeforeRefreshevent, and
set them back in the AfterRefreshevent. This requires advanced VBAtechniques, using class modules
to trap events, as discussed in Chapter 16. 
528
Chapter 24: Excel and the Internet
Rotate single page in pdf reader - 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 a pdf page in reader; rotate pdf page
Rotate single page in pdf reader - 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 individual pages in pdf reader; how to rotate pdf pages and save permanently
In this case, you can retrieve just the table of exchange rates, using the following code to create and
execute a new Web Query. In practice, it’s easiest to use the macro recorder to ensure the selections are
correct:
‘Retrieve USD exchange rates using a Web Query
Sub GetRatesWithWebQuery()
Dim oBk As Workbook
Dim oQT As QueryTable
‘Store the current settings of Excel’s number formatting
Dim sDecimal As String
Dim sThousand As String
Dim bUseSystem As Boolean
‘Create a new workbook
Set oBk = Workbooks.Add
‘Create a query table to download USD rates
With oBk.Worksheets(1)
Set oQT = .QueryTables.Add( _
Connection:=”URL;http://www.x-rates.com/d/USD/table.html”, _
Destination:=.Range(“A1”))
End With
‘Set the QueryTable’s properties
With oQT
.Name = “USD”
‘State that we’re selecting a specific table
.WebSelectionType = xlSpecifiedTables
‘Import the 14th table on the page
.WebTables = “14”
‘Ignore the web page’s formatting
.WebFormatting = xlWebFormattingNone
‘Do not try to recognize dates
.WebDisableDateRecognition = True
‘Don’t automatically refresh the query each time the file is opened
.RefreshOnFileOpen = False
‘Waiting for the query to complete before continuing
.BackgroundQuery = True
‘Save the query data with the workbook
.SaveData = True
‘Adjust column widths to autofit new data
529
Chapter 24: Excel and the Internet
VB.NET PDF Page Delete Library: remove PDF pages in vb.net, ASP.
Able to remove a single page from adobe PDF document in VB.NET. using RasterEdge. XDoc.PDF; How to VB.NET: Delete a Single PDF Page from PDF File.
how to rotate a page in pdf and save it; rotate a pdf page
C# PDF Page Delete Library: remove PDF pages in C#.net, ASP.NET
application. Able to remove a single page from PDF document. Ability Demo Code: How to Delete a Single PDF Page from PDF File in C#.NET. How to
permanently rotate pdf pages; rotate pdf page few degrees
.AdjustColumnWidth = True
End With
With Application
‘Remember Excel’s current number format settings
sDecimal = .DecimalSeparator
sThousand = .ThousandsSeparator
bUseSystem = .UseSystemSeparators
‘Set Excel’s separators to match those of the web site
.DecimalSeparator = “.”
.ThousandsSeparator = “,”
.UseSystemSeparators = True
‘Ignore any errors raised by the query failing
On Error Resume Next
‘Perform the query, waiting for it to complete
oQT.Refresh BackgroundQuery:=False
‘Reset Excel’s number format settings
.DecimalSeparator = sDecimal
.ThousandsSeparator = sThousand
.UseSystemSeparators = bUseSystem
End With
End Sub
The .WebTables=“14”line in this example tells Excel that you want the 14th table on the page.
Literally, this is the 14th occurrence of a <TABLE>tag in the source HTMLfor the page.
Parsing Web Pages for Specific Information
Web Queries are an excellent way of retrieving tables of information from web pages, but they are a little
cumbersome if you are only interested in one or two items of information and are extremely susceptible
to minor changes in the web page layout (such as adding an extra <table>tag at the top of the page).
Another way is to read the page using a hidden instance of Internet Explorer, search within the page for
the required information (using either the HTMLor plain text representations), and then return the
result. The following code requires a reference to the Microsoft Internet Controls object library:
Sub GetUSDtoGBPRateUsingIE()
Dim oIE As SHDocVw.InternetExplorer
Dim sPage As String
Dim iGBP As Long, iDec As Long
Dim iStart As Long, iEnd As Long
Dim dRate As Double
‘Create a new (hidden) instance of IE
Set oIE = New SHDocVw.InternetExplorer
‘Open the web page
530
Chapter 24: Excel and the Internet
VB.NET PDF- View PDF Online with VB.NET HTML5 PDF Viewer
PDF to images, C#.NET PDF file & pages edit, C#.NET PDF pages extract, copy, paste, C#.NET rotate PDF pages, C# Single page. View PDF in single page display mode
how to rotate one pdf page; rotate one page in pdf reader
How to C#: Basic SDK Concept of XDoc.PDF for .NET
insert, delete, re-order, copy, paste, cut, rotate, and save or query data and save the PDF document. The PDFPage class presents a single page in a PDFDocument
rotate single page in pdf reader; rotate single page in pdf
oIE.Navigate “http://www.x-rates.com/d/USD/table.html”
‘Wait for the page to complete loading
Do Until oIE.readyState = READYSTATE_COMPLETE
DoEvents
Loop
‘Retrieve the text of the web page into a variable
sPage = oIE.Document.body.InnerText
‘**********************************************************************
‘  Brazilian Real   2.1397  0.467355
‘  British Pound   0.524934  1.905
‘  Canadian Dollar   1.1056  0.904486
‘**********************************************************************
‘To find the exchange rate, we have to find the entry for British
‘Pounds, then work forwards to find the exchange rate
‘Find the entry for British Pounds in the web page text.
iGBP = InStr(1, sPage, “British Pound”)
‘Find the next decimal, which will be in the middle of the
‘exchange rate number
iDec = InStr(iGBP, sPage, “.”)
‘Find the start and end of the number
iStart = InStrRev(sPage, “ “, iDec) + 1
iEnd = InStr(iDec, sPage, “ “)
‘Evaluate the number, knowing that it’s in US format
dRate = Val(Mid$(sPage, iStart, iEnd - iStart))
‘Display the rate
MsgBox “The USD/GBP exchange rate is “ & dRate
End Sub
The most appropriate method to use will depend on the precise circumstances, and how much data is
required. For single items, it is probably easier to use the last approach. For more than a few items, it will
be easier to use a Web Query to read the page or table into a workbook, and then find the required items
on the sheet.
Using the Internet to Publish Results
Aweb server can be used as a repository of information, storing your application’s results and present-
ing them to a wider audience than can be achieved with printed reports. By presenting results as web
pages, the reader of those pages can easily use the results as sources of data for their own analysis, and
easily pass those results to other interested parties.
531
Chapter 24: Excel and the Internet
C# PDF Convert to Tiff SDK: Convert PDF to tiff images in C#.net
Both single page and multipage tiff image files can be created from PDF. Supports tiff compression selection. Supports for changing image size.
rotate pdf page and save; rotate pdf pages on ipad
VB.NET PDF: Basic SDK Concept of XDoc.PDF
insert, delete, re-order, copy, paste, cut, rotate, and save or query data and save the PDF document. The PDFPage class presents a single page in a PDFDocument
rotate pages in pdf permanently; pdf reverse page order preview
Setting Up a Web Server
For all the examples from now on, you will require write access to a web server. Because later examples
use Active Server Pages (ASP), here you will use Microsoft’s IIS 5.0. Open IIS, and right-click the Default
Web Site node. Select Properties and click the HomeDirectory tab. You will be presented with various
configuration options for the default web site. Make sure that the Read and Write checkboxes are
selected (see Figure 24-2) and click OK.
Figure 24-2
Notice the Local Path: box. This is where the root of your web server is located. By default, it is
C:\inetpub\wwwroot\. Any web pages placed in this directory are published at the URL http://
localhost/PageName.html
Saving Worksheets as Web Pages
The easiest way to present results as a web page is to create a template workbook that has all the format-
ting and links that you’d like to show. When your application produces its results, it is then a simple task
to copy the relevant numbers to the template, then save the template direct to the web server (assuming
the server is configured to allow this—if not, you may have to save the HTMLfile to a network location):
Sub PublishResultsToWeb()
Dim oBk As Workbook
Dim oSht As Worksheet
‘Create a new copy of the Web Template workbook
532
Chapter 24: Excel and the Internet
VB.NET PDF File Merge Library: Merge, append PDF files in vb.net
all. This guiding page will help you merge two or more PDF documents into a single one in a Visual Basic .NET imaging application.
saving rotated pdf pages; rotate all pages in pdf preview
C# PDF File Merge Library: Merge, append PDF files in C#.net, ASP.
all those C#.NET PDF document page processing functions To be more specific, two or more input PDF documents can then saved and output as a single PDF with user
how to change page orientation in pdf document; reverse pdf page order online
Set oBk = Workbooks.Add(“c:\mydir\WebTemplate.xlsx”)
‘Get the first sheet in the workbook
Set oSht = oBk.Worksheets(1)
‘Populate the results
oSht.Range(“Profits”).Value = Workbooks(“Results.xlsx”) _
.Worksheets(“Financials”).Range(“Profits”).Value
‘Save as a web page, direct to the server
oSht.SaveAs “http://localhost/ResultsJuly2001.htm”, xlHtml
‘Close the workbook
oBk.Close False
End Sub
Prior to Excel 2007, the resulting HTMLwas horrible to modify, because it contained a large amount of
extraneous information that could be used to “round-trip” a worksheet through the HTMLformat.
Round-tripping through HTMLnever worked well, always lost data or formatting, and was almost
never used. With the introduction of the XMLfile formats in Excel 2007, the requirement to round-trip
through HTMLno longer exists, and the Save to HTMLfeature has been redesigned as a simple publish-
ing mechanism—resulting in much cleaner HTML.
Creating Interactive Web Pages
The previous example saved a static rendition of the worksheet in HTMLformat to the web server. In
Excel 2000, Microsoft introduced the Office Web Components to create interactive web pages. When sav-
ing a worksheet in interactive form, the worksheet was converted to a set of objects collectively known
as the Office Web Components. In Excel 2007, the Office Web Components have been dropped and
replaced by a dedicated server-side Excel component. Known as Excel Services, the component runs on
top of the SharePoint architecture and is able to open Excel workbooks, update data, perform calcula-
tions, and render the results as plain HTMLfor display in a SharePoint portal. Unfortunately, Excel
Services is beyond the scope of this book.
Using the Internet as a Communication
Channel
Retrieving data from web pages and publishing results as web pages is in many ways a passive use of
the Internet; the web server is being used primarily as a storage medium. Web servers are also able to
host applications, with which you can interact in a more dynamic manner. The server application acts as
a single point of contact for all the client workbooks, to perform the following functions:
Acentralized data store
Collation of data from multiple clients
Presentation of that data back to other clients
533
Chapter 24: Excel and the Internet
Workflow management
Calculation engines
As an example, consider a timesheet reporting system, where each member of staff has an Excel work-
book to enter their time on a daily basis. At the end of each month, they connect to the Internet and send
their timesheets to an application running on a web server. That application stores the submitted data in
a central database. Some time later, a manager connects to the server and is sent the submitted hours for
her staff. She checks the numbers and authorizes payment, sending her authorization code back to the
server. The payroll department retrieves the authorized timesheet data from the same web server
directly into its accounting system and processes the payments.
In this business process, Excel is used for the front-end client, providing a rich and powerful user inter-
face, yet it only fulfils a specific part of the overall process. The server application maintains the data
(the completed timesheets) and presents it in whichever format is appropriate for the specific part of the
process. 
By using the Internet and standard data formats for this two-way communication, you can easily inte-
grate Excel clients with completely separate systems, as in the payroll system in the example, and allow
the business process to operate outside of the corporate network.
Communicating with a Web Server
Within a corporate network, nearly all data transfer takes place using proprietary binary formats, rang-
ing from transferring files to performing remote database queries. Due primarily to security considera-
tions, communication across the Internet has evolved to use textual formats, such as HTMLand more
recently XML. XMLis covered in detail in Chapter 12.
To be able to communicate with an application running on a web server, you need to be able to pass
information to, and receive information from, that application.
In Excel 2007, the Workbookobject’s FollowHyperlinkmethod can be used to communicate with a
web server. There a few problems with using this, including:
If an error occurs during the connection, Excel will freeze.
Any data returned from the hyperlink is automatically displayed as a new workbook.
You have very little control over the communication.
Amuch more flexible alternative is provided by the Microsoft Internet Transfer Control, msinet.ocx.
This ActiveX control, often referred to as the ITC, is an easy-to-use wrapper for the wininet.dllfile,
which provides low-level Internet-related services for the Windows platform.
Sending Data from the Client to the Server Application
Two mechanisms can be used to send information to a web server. You can either include the informa-
tion as part of the URLstring or send it as a separate section of the HTTPrequest.
534
Chapter 24: Excel and the Internet
URL Encoding
Parameters can be included within the URLstring by appending them to the end of the URL, with a
question mark (?) between the URLand the first parameter and an ampersand (&) between each 
parameter:
http://www.MySite.com/MyPage.asp?param1=value1&param2=value2&param2=value3
This has the advantage that the parameters form part of the URLand hence can be stored in the user’s
Favorites list or typed directly into the browser. It has the disadvantage that there is a limit to the total
length of a URL(2,083 characters in Internet Explorer), restricting the amount of information than can be
passed in this way.
POSTing Data
Whenever a request for a web page is sent to a web server, the request contains a large amount of infor-
mation in various header records. This includes things like the client application type and version, the
communication protocol and version, and user IDs and passwords. It also contains a POSTfield that can
be used to send information to the server application.
Because there is virtually no limit to the amount of data that can be put in a POSTfield, it is the preferred
way of transferring information to the server, and is the method used in most applications.
Most web page forms use the POSTmechanism to send the completed form to the server for processing.
Excel can mimic the web-based form by sending the same data to the same server in the same POSTfor-
mat, with the result being sent back as the new web page. The names of the parameters can be found by
examining the source of the real web page form. The form controls will be surrounded by a pair of
<form>and </form>tags, and each control within the form has a name attribute; those names are used
as the parameter names when the form’s data is sent to the server:
Sub SendDataUsingPOST()
Dim oInet As Inet
Dim lContent As Long
Dim sData As String
Dim sHeader As String
Dim sResult As String
‘Create a new instance of the Internet Transfer Control
Set oInet = New Inet
‘Build the POST string with the data to submit
sData = “Param1=Value1” & “&” & _
“Param2=Value2” & “&” & _
“Param3=Value3”
‘Spaces must be replaced with + signs
sData = Replace(sData, “ “, “+”)
‘Tell the POST that we’re sending an encoded parameter list
sHeader = “Content-Type: application/x-www-form-urlencoded”
‘Send the error information to the server
535
Chapter 24: Excel and the Internet
oInet.AccessType = icDirect
oInet.Execute “http://www.mysite.com/mypage.asp”, “POST”, _
sData, sHeader
‘Wait for the server to complete its work
Do While oInet.StillExecuting
DoEvents
Loop
‘Retrieve the returned text
lContent = oInet.GetHeader(“content-length”)
sResult = oInet.GetChunk(lContent + 100)
End Sub
In this example, you’re simply sending a simple list of name/value pairs to the server. If you need to
send more complex data, you can send it as XMLby providing the XMLin the sDatavariable, with a
header set to “Content-Type:text/xml”.
Summary
In Excel 2007, Microsoft has enabled the Excel developer to use the Internet as an integral part of an
application solution in the following ways:
Workbooks can be opened from and saved to web servers running the FrontPage Server
Extensions.
Excel can open HTMLpages as though they were workbooks.
Web Queries can be used to extract tables of data from web pages.
The Internet Explorer object library can be automated to retrieve individual items of data from a
web page, without the overhead of using a workbook.
Excel workbooks can be saved as content-rich web pages, using either HTMLor XML.
The ability to publish interactive web pages using the Office Web Components has been
removed from Excel 2007 and replaced with the Excel Services server-side component.
The Microsoft Internet Transfer Control can be used to exchange data between Excel applica-
tions and web servers, using either a simple parameter list or more structured XML.
Together, these tools enable you to develop new types of business solutions, where Excel is one key part
of a larger business process that may span multiple organizations and geographical locations.
536
Chapter 24: Excel and the Internet
International Issues
If you think that your application may be used internationally, it has to work with any choice of
Windows Regional Setting, on any language version of Windows, and with any language choice
for the Excel user interface.
If you are very lucky, all your potential users will have exactly the same settings as your develop-
ment machine and you won’t need to worry about international issues. However, a more likely
scenario is that you will not even know who all your users are going to be, let alone where in the
world they will live or the settings they will use.
Any bugs in your application that arise from the disregarding or ignoring of international issues
will not occur on your development machine unless you explicitly test for them. However, they
will be found immediately by your clients.
The combination of Regional Settings and Excel language is called the user’s locale, and the aim of
this chapter is to show you how to write locale-independent VBAapplications. To do this, we
include an explanation of the features in Excel that deal with locale-related issues, and highlight
areas within Excel where locale support is absent or limited. Workarounds are provided for most of
these limitations, but some are so problematic that the only solution is to not use the feature at all.
The rules provided in this chapter should be included in your coding standards and used by you
and your colleagues. It is easy to write locale-independent code from scratch; it is much more diffi-
cult to make existing code compatible with the many different locales in the world today.
Changing Windows Regional Settings and
the Office 2007 UI Language
Throughout this chapter, the potential errors will be demonstrated by using the three locales out-
lined in the following table.
Documents you may be interested
Documents you may be interested