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

Hello everyone,
I am not sure where to look. this groups has helped in the past so I
thought I would start here.
I have a website that I need to entry part numbers and qty for several
months of sales. On the web page you tab for each entry box and you
can only entry ten rows at a time before you submit for validation.
Each box holds different information such as, part number "b2gt,
5647,a1a" qty of "1" would be,first box "b2gt", second box "5647"
third box "a1a" and forth is the qty "1". My spreed sheet has it
broken down correctly. I can not copy and paste to the page, this puts
everything in same entry box. I need to have it tab after each cell
on the web page. Can I do this? I have been searching for a program/
software. We use some emulation software to do this on our invoices
from our lookup catalog but I am not sure where the program came from.
Do I use macros?
If this is not the correct group I apologize in advance.
  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 9,101
Default web page entries

I need your source html code to be able to help or a link to the page if it
is public. I'm not sure how you generated your webpage that would also help.

I need to find out how each box is identified. You could use a Send Key
command and send a TAB key commend but I would think that would be less
reliable.


If you have any macro code already that would be a bonus.


"Bassman" wrote:

Hello everyone,
I am not sure where to look. this groups has helped in the past so I
thought I would start here.
I have a website that I need to entry part numbers and qty for several
months of sales. On the web page you tab for each entry box and you
can only entry ten rows at a time before you submit for validation.
Each box holds different information such as, part number "b2gt,
5647,a1a" qty of "1" would be,first box "b2gt", second box "5647"
third box "a1a" and forth is the qty "1". My spreed sheet has it
broken down correctly. I can not copy and paste to the page, this puts
everything in same entry box. I need to have it tab after each cell
on the web page. Can I do this? I have been searching for a program/
software. We use some emulation software to do this on our invoices
from our lookup catalog but I am not sure where the program came from.
Do I use macros?
If this is not the correct group I apologize in advance.

  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 17
Default web page entries

On Aug 30, 4:08*pm, Joel wrote:
I need your source html code to be able to help or a link to the page if it
is public. *I'm not sure how you generated your webpage that would also help.

I need to find out how each box is identified. *You could use a Send Key
command and send a TAB key commend but I would think that would be less
reliable.

If you have any macro code already that would be a bonus.

"Bassman" wrote:
Hello everyone,
I am not sure where to look. this groups has helped in the past so I
thought I would start here.
I have a website that I need to entry part numbers and qty for several
months of sales. On the web page you tab for each entry box and you
can only entry ten rows at a time before you submit for validation.
Each box holds different information such as, part number "b2gt,
5647,a1a" qty of "1" would be,first box "b2gt", second box "5647"
third box "a1a" and forth is the qty "1". My spreed sheet has it
broken down correctly. I can not copy and paste to the page, this puts
everything in same entry box. *I need to have it tab after each cell
on the web page. *Can I do this? *I have been searching for a program/
software. We use some emulation software to do this on our invoices
from our lookup catalog but I am not sure where the program came from.
Do I use macros?
If this is not the correct group I apologize in advance.


It's not my page. It is a company web site. We input our number for
reporting. it is mostly java. What do I need to look for for you?
  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 9,101
Default web page entries

I have two examples of programs below. I use a combination of techniques to
backwards engineer Web code. I don't know Java very well and I'm not
experienced enough to be an expert but I can usally get things to work by
brute force method.

I usally got the webpage using Internet Explorer and use the menu View -
Source which will open a NotePad of the code. I look for two things

1) Tags, tags look like this

start of tag is an angle bracket with the name and the close is
an angle bracket with name and backslash

< A ..............some text ........... /A

You can get tags in code below using this statement

Set A_Tags = IE.Document.getelementsbytagname("A")


2) I also look in the source code for ID's which are : id =abc

You can get these in code with

'Set ABC = IE.document.getElementById("abc")


The boxes you are looking for should have usique ids which will get you the
locations to put the data.

I also dump all the items to a worksheet (sheet1) like I did in the macro
GenericCode() below. There is a for loop with ITM in this code. I also put
a break point in the for loop and then add ITM to the watch window to help me
debug code. You can change the URL in this code to your website to help you
find the name of the boxes.

In the first Nissan code I added data to a text box using these two lines

Set radius = IE.document.getElementById("radius")
radius.Value = "100"


You need to do something similar in your code.
I hope this will get you started.
------------------------------------------------------------------------------------------------

Nissan Dealer code
Make a Worksheet called DEALERS and run this code
--------------------------------------------------------------------------------------------
Sub GetDealers()
'Dim PageNumber As Object
CR = Chr(13)
LF = Chr(10)

Set IE = CreateObject("InternetExplorer.Application")
IE.Visible = True

URL = "http://www.nissanusa.com/apps/dealerlocator"
Request = "?zipCode=07508&tool=Home.Locator"

'get web page
IE.Navigate2 URL & Request
Do While IE.readyState < 4
DoEvents
Loop

'get search button
Set but = IE.document.getElementById("mainSearchButton")
'put distance in listbox on webpage
Set radius = IE.document.getElementById("radius")
radius.Value = "100"


'search again a larger distance
'Select Search button and activate
but.Select
but.Click
Set SearchResults = IE.document.getElementById("searchResults")

On Error Resume Next ' Defer error handling.
Do
Err.Clear
Set PageNumber = IE.document.getElementById("pageNumber")
Pages = PageNumber.Value
DoEvents
Loop While Err.Number < 0
On Error GoTo 0


With Sheets("Dealers")
.Cells.ClearContents
RowCount = 1

For PageCount = 1 To PageNumber.Length
PageNumber.Value = Format(PageCount, "@")
PageNumber.onchange

For Each Chld In SearchResults.Children

If Chld.innertext = "" Then
Exit For
End If
Set DealerNumberObj = _
Chld.getelementsbytagname("A")
DealerNumberStr = DealerNumberObj.Item(1).pathname
dealerNumber = _
Val(Mid(DealerNumberStr, InStr(DealerNumberStr, "'") + 1))
.Cells(RowCount, "A") = dealerNumber

ColCount = 2
dealer = Chld.innertext
Do While InStr(dealer, CR) 0
Data = Trim(Left(dealer, InStr(dealer, CR) - 1))

'remove leading CR and LF
Do While Left(Data, 1) = LF Or _
Left(Data, 1) = CR

Data = Mid(Data, 2)
Loop
dealer = Trim(Mid(dealer, InStr(dealer, CR) + 1))
If InStr(Data, "(") 0 And _
ColCount = 4 Then

Distance = Trim(Mid(Data, InStr(Data, "(") + 1))
Distance = Trim(Left(Distance, InStr(Distance, ")") - 1))
CityState = Trim(Left(Data, InStr(Data, "(") - 1))
.Cells(RowCount, ColCount) = CityState
.Cells(RowCount, (ColCount + 1)) = Distance
ColCount = ColCount + 2
Else
.Cells(RowCount, ColCount) = Data
ColCount = ColCount + 1
End If
Loop

'remove leading CR and LF
Do While Left(dealer, 1) = LF Or _
Left(dealer, 1) = CR

dealer = Mid(dealer, 2)
Loop
.Cells(RowCount, ColCount) = dealer
RowCount = RowCount + 1
Next Chld
Next PageCount
End With
End Sub


------------------------------------------------------------------------------------------

'Run this code in a workbook with a sheet name SHEET1
Sub GenericCode()

'Enter your URL here
URL = "http://www.shockwave.com"


Set IE = CreateObject("InternetExplorer.Application")
IE.Visible = True


'get web page
IE.Navigate2 URL
Do While IE.readyState < 4
DoEvents
Loop

'get TAG Item
Set A_Tags = IE.Document.getelementsbytagname("A")
'Set but = IE.document.getElementById("mainSearchButton")

RowCount = 1
With Sheets("Sheet1")
For Each itm In IE.Document.all
.Range("A" & RowCount) = itm.classname
.Range("B" & RowCount) = itm.tagname
' .Range("C" & RowCount) = Left(itm.innertext, 256)
.Range("D" & RowCount) = Left(itm.innerhtml, 256)
RowCount = RowCount + 1
Next itm
End With
End Sub




"Bassman" wrote:

On Aug 30, 4:08 pm, Joel wrote:
I need your source html code to be able to help or a link to the page if it
is public. I'm not sure how you generated your webpage that would also help.

I need to find out how each box is identified. You could use a Send Key
command and send a TAB key commend but I would think that would be less
reliable.

If you have any macro code already that would be a bonus.

"Bassman" wrote:
Hello everyone,
I am not sure where to look. this groups has helped in the past so I
thought I would start here.
I have a website that I need to entry part numbers and qty for several
months of sales. On the web page you tab for each entry box and you
can only entry ten rows at a time before you submit for validation.
Each box holds different information such as, part number "b2gt,
5647,a1a" qty of "1" would be,first box "b2gt", second box "5647"
third box "a1a" and forth is the qty "1". My spreed sheet has it
broken down correctly. I can not copy and paste to the page, this puts
everything in same entry box. I need to have it tab after each cell
on the web page. Can I do this? I have been searching for a program/
software. We use some emulation software to do this on our invoices
from our lookup catalog but I am not sure where the program came from.
Do I use macros?
If this is not the correct group I apologize in advance.


It's not my page. It is a company web site. We input our number for
reporting. it is mostly java. What do I need to look for for you?

  #5   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 17
Default web page entries

On Aug 31, 1:55*pm, Joel wrote:
I have two examples of programs below. *I use a combination of techniques to
backwards engineer Web code. *I don't know Java very well and I'm not
experienced enough to be an expert but I can usally get things to work by
brute force method.

I usally got the webpage using Internet Explorer and use the menu View -
Source which will open a NotePad of the code. *I look for two things

* * *1) Tags, tags look like this

* * * * * * start of tag is an angle bracket with the name and the close is
an angle bracket with name and backslash

* * *< A * ..............some text *........... * * */A

* You can get tags in code below using this statement

* * * Set A_Tags = IE.Document.getelementsbytagname("A")

* *2) I also look in the source code for ID's which are *: id =abc

* * * You can get these in code with

* * *'Set ABC = IE.document.getElementById("abc")

The boxes you are looking for should have usique ids which will get you the
locations to put the data.

I also dump all the items to a worksheet (sheet1) like I did in the macro
GenericCode() below. *There is a for loop with ITM in this code. *I also put
a break point in the for loop and then add ITM to the watch window to help me
debug code. *You can change the URL in this code to your website to help you
find the name of the boxes.

In the first Nissan code I added data to a text box using these two lines

* * *Set radius = IE.document.getElementById("radius")
* * *radius.Value = "100"

You need to do something similar in your code.
I hope this will get you started.
------------------------------------------------------------------------------------------------

Nissan Dealer code
Make a Worksheet called DEALERS and run this code
--------------------------------------------------------------------------------------------
Sub GetDealers()
'Dim PageNumber As Object
CR = Chr(13)
LF = Chr(10)

Set IE = CreateObject("InternetExplorer.Application")
IE.Visible = True

URL = "http://www.nissanusa.com/apps/dealerlocator"
Request = "?zipCode=07508&tool=Home.Locator"

'get web page
IE.Navigate2 URL & Request
Do While IE.readyState < 4
* *DoEvents
Loop

'get search button
Set but = IE.document.getElementById("mainSearchButton")
'put distance in listbox on webpage
Set radius = IE.document.getElementById("radius")
radius.Value = "100"

'search again a larger distance
'Select Search button and activate
but.Select
but.Click
Set SearchResults = IE.document.getElementById("searchResults")

On Error Resume Next * *' Defer error handling.
Do
* *Err.Clear
* *Set PageNumber = IE.document.getElementById("pageNumber")
* *Pages = PageNumber.Value
* *DoEvents
Loop While Err.Number < 0
On Error GoTo 0

With Sheets("Dealers")
* *.Cells.ClearContents
* *RowCount = 1

* *For PageCount = 1 To PageNumber.Length
* * * PageNumber.Value = Format(PageCount, "@")
* * * PageNumber.onchange

* * * For Each Chld In SearchResults.Children

* * * * *If Chld.innertext = "" Then
* * * * * * Exit For
* * * * *End If
* * * * *Set DealerNumberObj = _
* * * * * * Chld.getelementsbytagname("A")
* * * * *DealerNumberStr = DealerNumberObj.Item(1).pathname
* * * * *dealerNumber = _
* * * * * * Val(Mid(DealerNumberStr, InStr(DealerNumberStr, "'") + 1))
* * * * *.Cells(RowCount, "A") = dealerNumber

* * * * *ColCount = 2
* * * * *dealer = Chld.innertext
* * * * *Do While InStr(dealer, CR) 0
* * * * * * Data = Trim(Left(dealer, InStr(dealer, CR) - 1))

* * * * * * 'remove leading CR and LF
* * * * * * Do While Left(Data, 1) = LF Or _
* * * * * * * * * Left(Data, 1) = CR

* * * * * * * *Data = Mid(Data, 2)
* * * * * * Loop
* * * * * * dealer = Trim(Mid(dealer, InStr(dealer, CR) + 1))
* * * * * * If InStr(Data, "(") 0 And _
* * * * * * * *ColCount = 4 Then

* * * * * * * *Distance = Trim(Mid(Data, InStr(Data, "(") + 1))
* * * * * * * *Distance = Trim(Left(Distance, InStr(Distance, ")") - 1))
* * * * * * * *CityState = Trim(Left(Data, InStr(Data, "(") - 1))
* * * * * * * *.Cells(RowCount, ColCount) = CityState
* * * * * * * *.Cells(RowCount, (ColCount + 1)) = Distance
* * * * * * * *ColCount = ColCount + 2
* * * * * * Else
* * * * * * * *.Cells(RowCount, ColCount) = Data
* * * * * * * *ColCount = ColCount + 1
* * * * * * End If
* * * * *Loop

* * * * *'remove leading CR and LF
* * * * *Do While Left(dealer, 1) = LF Or _
* * * * * * * *Left(dealer, 1) = CR

* * * * * * dealer = Mid(dealer, 2)
* * * * *Loop
* * * * *.Cells(RowCount, ColCount) = dealer
* * * * *RowCount = RowCount + 1
* * * Next Chld
* *Next PageCount
End With
End Sub

------------------------------------------------------------------------------------------

'Run this code in a workbook with a sheet name SHEET1
Sub GenericCode()

'Enter your URL here
URL = "http://www.shockwave.com"

Set IE = CreateObject("InternetExplorer.Application")
IE.Visible = True

'get web page
IE.Navigate2 URL
Do While IE.readyState < 4
* *DoEvents
Loop

'get TAG Item
Set A_Tags = IE.Document.getelementsbytagname("A")
'Set but = IE.document.getElementById("mainSearchButton")

RowCount = 1
With Sheets("Sheet1")
* *For Each itm In IE.Document.all
* * * .Range("A" & RowCount) = itm.classname
* * * .Range("B" & RowCount) = itm.tagname
*' * * .Range("C" & RowCount) = Left(itm.innertext, 256)
* * * .Range("D" & RowCount) = Left(itm.innerhtml, 256)
* * * RowCount = RowCount + 1
* *Next itm
End With
End Sub

"Bassman" wrote:
On Aug 30, 4:08 pm, Joel wrote:
I need your source html code to be able to help or a link to the page if it
is public. *I'm not sure how you generated your webpage that would also help.


I need to find out how each box is identified. *You could use a Send Key
command and send a TAB key commend but I would think that would be less
reliable.


If you have any macro code already that would be a bonus.


"Bassman" wrote:
Hello everyone,
I am not sure where to look. this groups has helped in the past so I
thought I would start here.
I have a website that I need to entry part numbers and qty for several
months of sales. On the web page you tab for each entry box and you
can only entry ten rows at a time before you submit for validation.
Each box holds different information such as, part number "b2gt,
5647,a1a" qty of "1" would be,first box "b2gt", second box "5647"
third box "a1a" and forth is the qty "1". My spreed sheet has it
broken down correctly. I can not copy and paste to the page, this puts
everything in same entry box. *I need to have it tab after each cell
on the web page. *Can I do this? *I have been searching for a program/
software. We use some emulation software to do this on our invoices
from our lookup catalog but I am not sure where the program came from.
Do I use macros?
If this is not the correct group I apologize in advance.


It's not my page. It is a company web site. We input our number for
reporting. it is mostly java. What do I need to look for for you?


Thank you very much for the assistance. I see how this extracts
information from the webpage. Can I load from excel to webpage?


  #6   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 9,101
Default web page entries

Yes You can load from excel to a webpage. It is similar to putting in the
Radius of 100 miles. rather than to use a fix number of 100 the code could
be change to use data from excel

from
Set radius = IE.document.getElementById("radius")
radius.Value = "100"

to
Set radius = IE.document.getElementById("radius")
radius.Value = Sheets("Sheet1").Range("A1")

The radius would be one of the text boxes you are trying to load.

"Bassman" wrote:

On Aug 31, 1:55 pm, Joel wrote:
I have two examples of programs below. I use a combination of techniques to
backwards engineer Web code. I don't know Java very well and I'm not
experienced enough to be an expert but I can usally get things to work by
brute force method.

I usally got the webpage using Internet Explorer and use the menu View -
Source which will open a NotePad of the code. I look for two things

1) Tags, tags look like this

start of tag is an angle bracket with the name and the close is
an angle bracket with name and backslash

< A ..............some text ........... /A

You can get tags in code below using this statement

Set A_Tags = IE.Document.getelementsbytagname("A")

2) I also look in the source code for ID's which are : id =abc

You can get these in code with

'Set ABC = IE.document.getElementById("abc")

The boxes you are looking for should have usique ids which will get you the
locations to put the data.

I also dump all the items to a worksheet (sheet1) like I did in the macro
GenericCode() below. There is a for loop with ITM in this code. I also put
a break point in the for loop and then add ITM to the watch window to help me
debug code. You can change the URL in this code to your website to help you
find the name of the boxes.

In the first Nissan code I added data to a text box using these two lines

Set radius = IE.document.getElementById("radius")
radius.Value = "100"

You need to do something similar in your code.
I hope this will get you started.
------------------------------------------------------------------------------------------------

Nissan Dealer code
Make a Worksheet called DEALERS and run this code
--------------------------------------------------------------------------------------------
Sub GetDealers()
'Dim PageNumber As Object
CR = Chr(13)
LF = Chr(10)

Set IE = CreateObject("InternetExplorer.Application")
IE.Visible = True

URL = "http://www.nissanusa.com/apps/dealerlocator"
Request = "?zipCode=07508&tool=Home.Locator"

'get web page
IE.Navigate2 URL & Request
Do While IE.readyState < 4
DoEvents
Loop

'get search button
Set but = IE.document.getElementById("mainSearchButton")
'put distance in listbox on webpage
Set radius = IE.document.getElementById("radius")
radius.Value = "100"

'search again a larger distance
'Select Search button and activate
but.Select
but.Click
Set SearchResults = IE.document.getElementById("searchResults")

On Error Resume Next ' Defer error handling.
Do
Err.Clear
Set PageNumber = IE.document.getElementById("pageNumber")
Pages = PageNumber.Value
DoEvents
Loop While Err.Number < 0
On Error GoTo 0

With Sheets("Dealers")
.Cells.ClearContents
RowCount = 1

For PageCount = 1 To PageNumber.Length
PageNumber.Value = Format(PageCount, "@")
PageNumber.onchange

For Each Chld In SearchResults.Children

If Chld.innertext = "" Then
Exit For
End If
Set DealerNumberObj = _
Chld.getelementsbytagname("A")
DealerNumberStr = DealerNumberObj.Item(1).pathname
dealerNumber = _
Val(Mid(DealerNumberStr, InStr(DealerNumberStr, "'") + 1))
.Cells(RowCount, "A") = dealerNumber

ColCount = 2
dealer = Chld.innertext
Do While InStr(dealer, CR) 0
Data = Trim(Left(dealer, InStr(dealer, CR) - 1))

'remove leading CR and LF
Do While Left(Data, 1) = LF Or _
Left(Data, 1) = CR

Data = Mid(Data, 2)
Loop
dealer = Trim(Mid(dealer, InStr(dealer, CR) + 1))
If InStr(Data, "(") 0 And _
ColCount = 4 Then

Distance = Trim(Mid(Data, InStr(Data, "(") + 1))
Distance = Trim(Left(Distance, InStr(Distance, ")") - 1))
CityState = Trim(Left(Data, InStr(Data, "(") - 1))
.Cells(RowCount, ColCount) = CityState
.Cells(RowCount, (ColCount + 1)) = Distance
ColCount = ColCount + 2
Else
.Cells(RowCount, ColCount) = Data
ColCount = ColCount + 1
End If
Loop

'remove leading CR and LF
Do While Left(dealer, 1) = LF Or _
Left(dealer, 1) = CR

dealer = Mid(dealer, 2)
Loop
.Cells(RowCount, ColCount) = dealer
RowCount = RowCount + 1
Next Chld
Next PageCount
End With
End Sub

------------------------------------------------------------------------------------------

'Run this code in a workbook with a sheet name SHEET1
Sub GenericCode()

'Enter your URL here
URL = "http://www.shockwave.com"

Set IE = CreateObject("InternetExplorer.Application")
IE.Visible = True

'get web page
IE.Navigate2 URL
Do While IE.readyState < 4
DoEvents
Loop

'get TAG Item
Set A_Tags = IE.Document.getelementsbytagname("A")
'Set but = IE.document.getElementById("mainSearchButton")

RowCount = 1
With Sheets("Sheet1")
For Each itm In IE.Document.all
.Range("A" & RowCount) = itm.classname
.Range("B" & RowCount) = itm.tagname
' .Range("C" & RowCount) = Left(itm.innertext, 256)
.Range("D" & RowCount) = Left(itm.innerhtml, 256)
RowCount = RowCount + 1
Next itm
End With
End Sub

"Bassman" wrote:
On Aug 30, 4:08 pm, Joel wrote:
I need your source html code to be able to help or a link to the page if it
is public. I'm not sure how you generated your webpage that would also help.


I need to find out how each box is identified. You could use a Send Key
command and send a TAB key commend but I would think that would be less
reliable.


If you have any macro code already that would be a bonus.


"Bassman" wrote:
Hello everyone,
I am not sure where to look. this groups has helped in the past so I
thought I would start here.
I have a website that I need to entry part numbers and qty for several
months of sales. On the web page you tab for each entry box and you
can only entry ten rows at a time before you submit for validation.
Each box holds different information such as, part number "b2gt,
5647,a1a" qty of "1" would be,first box "b2gt", second box "5647"
third box "a1a" and forth is the qty "1". My spreed sheet has it
broken down correctly. I can not copy and paste to the page, this puts
everything in same entry box. I need to have it tab after each cell
on the web page. Can I do this? I have been searching for a program/
software. We use some emulation software to do this on our invoices
from our lookup catalog but I am not sure where the program came from.
Do I use macros?
If this is not the correct group I apologize in advance.


It's not my page. It is a company web site. We input our number for
reporting. it is mostly java. What do I need to look for for you?


Thank you very much for the assistance. I see how this extracts
information from the webpage. Can I load from excel to webpage?

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
Combine Multiple Entries with differing amounts of entries Katie Excel Worksheet Functions 2 November 28th 07 09:53 PM
adding total entries from one page to show on another tracer237 Excel Discussion (Misc queries) 1 March 23rd 07 09:01 PM
Multiple page entries DAVID SHAUBS Links and Linking in Excel 1 August 1st 06 08:21 AM
set up a link that updates page one from all other page entries? brensand Excel Worksheet Functions 2 May 17th 06 08:19 PM
How do I change multi-line entries to single line entries in Exce. CPOWEREQUIP Excel Worksheet Functions 3 April 14th 05 12:38 AM


All times are GMT +1. The time now is 12:47 AM.

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"