| 
    
     |  | >▼Hirofumi さん、こんばんは。ご指摘のとおりコードを入力しましたが、 >だめみたいです。私もコードの内容について勉強しているのですが、わかりません。
 >それで、参考までに今現在のコードを添付致します。それでも判明できなかったら、
 >非常に残念ですが、ここであきらめるしかないです。
 >これ以上、ご迷惑をおかけすることはできないので、
 >後は、私で、Hirohumiさんのコードを元に勉強して、
 >解明してみます。
 
 別に、大して迷惑では有りませんが、土日ぐらいしか頻繁に回答できなくて
 ご迷惑をお掛けしています
 ただ、私もこのコードが動かないのが癪に障りますので
 もし、ハルコさんに試して見る気が有れば、デバグの方法をお教えしますので
 此れを試して見て下さい
 
 現在の状態は、「同一の店名が有ります」と言う所で引っ掛かっているのですよね?
 これは、どのシートの店舗名を読んでこうなって居るのかを調べます
 
 1、コードの実行を途中で止めるので
 先ず、「Sub Classification2」の中の
 
 '画面更新を停止
 '  Application.ScreenUpdating = False
 
 '画面更新を再開
 '  Application.ScreenUpdating = True
 
 をコメントアウトして下さい
 コメントアウトとは、上記の様に先頭に"'"アポストロフィーを付け
 コメント行にする事です
 
 2、次に、「Function MakeStoreIndex」プロシージャを出します
 
 '最初にIndexに追加されたシート番号に就いて
 With Worksheets(lngSheetNo)
 
 の位置で、Worksheets(lngSheetNo)をドラッグして反転表示にします
 
 3、此れを、マウスでポイントして、右クリックします
 メニューが出ますので、ウォッチ式の追加をクリックします
 ウォッチ式の追加のダイアログが出て、式の所に
 
 Worksheets(lngSheetNo)
 
 が入って表示されるはずです
 此れを
 
 Worksheets(lngSheetNo).Name
 
 に替え、Okを出します
 画面下側に、ウォッチウインドウが出て、ここに、今入れた「Worksheets(lngSheetNo).Name」
 が表示されているはずです
 
 4、同様に「For i = 」のiを反転表示して、ウォッチ式の追加を行い、ウォッチウインドウに追加します
 5、同様に、「'店舗名の先頭から終まで繰り返し」以下のコード中の「vntData(i, 1)」も、
 ウォッチウインドウに追加します
 6、次に、
 
 '最初にIndexに追加されたシート番号に就いて
 With Worksheets(lngSheetNo)
 
 のWithの左側のウィンドウ枠の幅広の部分をクリックします、
 枠に●が表示され、「With Worksheets(lngSheetNo)」が反転表示されます
 私の環境では、反転表示、●共に茶色の色が付いています
 これは、ここにブレークポイントを設定したと言います
 7、これで準備が出来ました、表示をVBEからシートにし、マクロを実行します
 8、マクロを実行すると、先ほど設定したブレークポイントの位置で実行が中断します
 この時、ウォッチウインドウの「Worksheets(lngSheetNo).Name」の右側の値の所を見ると
 店舗を読みに行っているシートのシート名が表示されています
 まず、此れが転記先のシートの1枚かどうか確認して下さい
 9、次に、ファンクションキーのF8を押すと、私の環境では、黄色の反転表示が現れます
 此れは、スッテプ実行と言って、1行づつコードを実行していきます
 F8を何回か押して、黄色の反転表示を「If Right(vntData(i, 1), 1) <> "店" Then」
 の所まで持って行きます、この時、ウォッチウインドウのiの値、vntData(i, 1)の値
 を見て下さい、この様にF8を押す毎に1行づつ実行され、黄色の反転表示の前の行まで
 に変更された、iの値とvntData(i, 1)の値を見ることが出来ます
 10、F8を繰り返していくと、何処かで「Beep」の所に反転表示が移ります
 この時のiの値、vntData(i, 1)の値がハルコさんの心当たりの有る値かどうか確認してください
 11、もし、シート名が転記先シートの1枚で無ければ、そのシートのE1の日付が有るはずです
 また、シート名が転記先シートの1枚で有れば、vntData(i, 1)の値が店舗名で有るのかを
 確認して下さい、有るなら、vntData(i, 1)の値に重複が有るか確認して下さい
 12、ここら辺の事が解ったら報告して下さい
 13、全てを確認したら、VBEのメニュバーの「実行」→「リセット」を選択して実行を中止します
 次に、VBEのメニュバーの「デバッグ」→「すべてのブレークポントの解除」を選択して
 すべてのブレークポントを解除して置きます
 
 |  |