具体的には商品ごとのコードをシステムに登録する必要があり、
商品区分+登録日+シリアル+棚番号で構成されるものを
フォームのテキストボックスに入力する必要があります。
例としては、k20070101001-A1といった形式となり、
kが商品区分、A1が棚番号となります。
シリアルは商品の登録ごとに1つずつ増やしていきます。
こういった内容を、
1.Webのフォームに自動入力
2.ペーストとの要領で簡単に入力
のいずれかが出来るツールはないでしょうか?
最低限、日付+シリアルの自動入力が出来ればいいと考えています。
商品区分・棚区分はずっと一定のものを入力していきますので、どこかに設定画面のようなものがあって変えることが出来ればベターです。
かんたんなHTMLの知識が必要になりますが、URLにフォームデータを追加することでかんたんに事前入力ができます。URLの後に、"?input1=AAA&input2=BBB"のような感じの文字列をつけると、フォームのinput1という入力欄にAAA、input2という入力欄にBBBのような感じで入力された状態でページが表示されます。
たとえばはてなのログインページ(https://www.hatena.ne.jp/login)で自動的にユーザー名を入れるには、ブラウザで
https://www.hatena.ne.jp/login?key=hatena@example.com
というURLを開きます。
keyというのはユーザー名の入力欄の名前です。(HTMLソースを表示して、inputタグを検索して調べます)
ただしログイン管理されているようなWebシステムですとURLの直接入力ができないと思うのでこの方法は使えない可能性があります。
またExcelVBAの知識がおありでしたら、ExcelからIEを開いて、Excelシートの内容からフォームに自動入力と言うようなことがExcelマクロ(VBA)でできます。(そんなに複雑で難しいプログラムにはなりません)
Excelシートをベースに管理できますし、いろいろカスタマイズも効くので便利です。
そういう前提でよければサンプルマクロを回答してもかまいませんが、技術的な話を期待されているかどうか分かりませんので今回の回答では書きません。
既存のシステム(具体的にはamazon.co.jpです)への適用なので、ご提示の方法では解決できないかと思います。
Excelから呼び出すという方法もおもしろいのですが、スピードを要求されるため実際には難しいかと思います。
Excelから呼び出してもそれほど遅くはないです。
試しに作ってみたので参考にどうぞ。
他にいい回答がなければ試してみるのも良いでしょう。
適当な新規ブックに[ツール]-[マクロ]-[Visual Basic Editor]でエディタを開き、ThisWorkBookに以下のプログラムをコピペしてください。
Option Explicit Option Base 0 Dim objIE As Object Sub CheckAmazon() Dim i As Long Dim r As Long Dim elements As Object Set objIE = CreateObject("InternetExplorer.application") objIE.Visible = True IE_navigate "http://www.amazon.co.jp" If MsgBox("サインインを行ってください。準備ができたらOKを押してください。キャンセルで終了します。", vbOKCancel) = vbCancel Then objIE.Quit Exit Sub End If IE_navigate "http://www.amazon.co.jp" r = 1 Do While Worksheets(1).Cells(r, 1).Value <> "" Set elements = objIE.document.getElementsByName("field-keywords") If elements Is Nothing Then Exit Sub End If elements.Item(0).Value = Worksheets(1).Cells(r, 1).Value elements.Item(0).form.submit Call WaitForReady If InStr(1, objIE.document.getElementsByTagName("HTML").Item(0).outerhtml, "完全に一致する結果がありませんでした") > 0 Then Worksheets(1).Cells(r, 2).Value = "一致する商品なし" Else Set elements = objIE.document.getElementsByTagName("SPAN") If Not elements Is Nothing Then For i = 0 To elements.Length - 1 If elements.Item(i).className = "srTitle" Then Worksheets(1).Cells(r, 2).Value = elements.Item(i).FirstChild.nodeValue Exit For End If Next i End If End If r = r + 1 Loop MsgBox "完了しました" Set objIE = Nothing End Sub Sub IE_navigate(url As String) objIE.navigate url WaitForSeconds 1 Call WaitForReady End Sub Function WaitForReady() Do While objIE.busy DoEvents Loop Do While objIE.document.ReadyState <> "complete" DoEvents Loop End Function Sub WaitForSeconds(ByVal seconds As Double) Dim t As Double seconds = seconds / 24 / 60 / 60 t = Now() Do While (Now() - t) < seconds DoEvents Loop End Sub
マクロ(CheckAmazon)を実行するとIEが起動しamazonのトップが表示されます。サインインを行って、Excel側でOKを押すと、Sheet1の列Aに書かれた複数のキーワードで次々と検索を行い、最初に見つかったアイテムを列Bに書くサンプルです。
検索フォームを使ったサンプルですが、他のフォームでも応用が可能です。
スピードが要求されるという意味が上手く伝わらなかったようで大変失礼しました。
実際の作業では、アイテムの状態などを手作業で登録し、それぞれに商品IDを登録するような作業を行います。同一の条件を繰り返すようなものではないので、PCの処理にかかる時間を要求しているのではなく、人間がいかに時間を変えずに作業できるか、作業の簡便さを求めています。
ただ、フォーム上に定型の内容入力することを簡単にして欲しいだけなのです。
私が作っているシステムではなく、既存のシステムですのでjavascriptでの解決は難しいです。