?
Solved

VBA to fill-in web form

Posted on 2014-11-08
10
Medium Priority
?
158 Views
Last Modified: 2014-11-22
We buy a lot of items at Sam's Club.  I wrote an Excel VBA program to keep track of the inventory, and to automate the purchase of items. A couple of days ago they change something on the site.  Looks the same, but the coding is different.  If you look at the front page, you'll see a search box and a magnifying glass next to it that works as a search button.  It is the search button we cannot click programmatically.  Any ideas?
And before someone asks, no, Sam's Club does not have an API for placing orders, and they say they have no intentions of creating one.
0
Comment
Question by:rrhandle8
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 5
  • 5
10 Comments
 
LVL 46

Expert Comment

by:aikimark
ID: 40431550
please post the code that you currently use
0
 

Author Comment

by:rrhandle8
ID: 40440808
Code is attached.

I got it to work by adding the two lines that start with "-->"
SamsClub-sample.txt
0
 
LVL 46

Expert Comment

by:aikimark
ID: 40440828
What data is in column A of your Items worksheet?  Just want to see one or two examples.

I think your code is overly complicated because you're using IE
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 

Author Comment

by:rrhandle8
ID: 40448895
Suggestions to using IE?
0
 
LVL 46

Expert Comment

by:aikimark
ID: 40448902
please give me some examples of what is in column A of your worksheet.
It looks like you're just putting the URL if the search succeeds.  Am I reading this wrong?
0
 

Author Comment

by:rrhandle8
ID: 40448944
Item#
13433230
14484656
15574090
15667515
15870476
15905012
16130065
80005208
0
 

Author Comment

by:rrhandle8
ID: 40448969
aikimark,

I got it to work with the following changes on these lines. I think it was the extra pause that did the trick.
So, what is a faster way to do this than using IE?

        ie.Document.getElementById("searchBar").Focus    'get the focus point of the input box
        Func.PauseBrowser
        SendKeys "~"    'do search
        Func.PauseBrowser

Open in new window

0
 
LVL 46

Expert Comment

by:aikimark
ID: 40448972
I manually searched for those items and nothing was returned.
0
 

Author Comment

by:rrhandle8
ID: 40448979
Old items.  I didn't know we were going to do a search on them.  Here are some active ones.

34488
196449
242249
341375
571453
651234
747192
995786
999999
0
 
LVL 46

Accepted Solution

by:
aikimark earned 2000 total points
ID: 40453072
This is an interesting problem.  The codes you are searching are a mix of Sam's specific and general (Walmart) values.  If your worksheet contained the Sam's values, the MSXML2 object is the desired solution.  It has less overhead and is faster than the IE automation solution.  Unfortunately, I haven't been able to find a good combination of URI keywords that will yield reliable results for non-Sam's values.  The best thing to do would be to accept your own comment, http:#a40448969 , as the solution.
0

Featured Post

Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article descibes how to create a connection between Excel and SAP and how to move data from Excel to SAP or the other way around.
How to get Spreadsheet Compare 2016 working with the 64 bit version of Office 2016
The viewer will learn how to create a normally distributed random variable in Excel, use a normal distribution to simulate the return on an investment over a period of years, Create a Monte Carlo simulation using a normal random variable, and calcul…
This Micro Tutorial will demonstrate in Google Sheets how to use the HYPERLINK function to create live links inside your spreadsheet.

719 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question