|    | 
     ▼かみちゃん さん: 
いつも素早い対応ありがとうございます。 
確認作業に手間取り動作報告が遅くなりました。 
すこぶる軽快・快調です。 
全て問題なく動作してます。 
 
> For Each ws In ThisWorkbook.Worksheets 
>  If InStr(1, ws.Name, "内訳明細") <> 0 Then 
上記はログ参考に探したもので意味が全てわかってませんでした。 
内訳明細シートは1シートです。 
 
"L1"の設定ですが下記のように過去ログ参考に作成してみたのですが 
Sub Main() 
Dim X As Long 
 
  Rtn = InputBox("1:一般 2:同業 3:特別のいずれかを入力してください") 
  X = Val(Rtn) 
  Select Case X 
    Case 1 
     Range("L1").Value = "一般" 
    Case 2 
     Range("L1").Value = "同業" 
    Case 3 
     Range("L1").Value = "特別" 
  End Select 
End Sub 
かみちゃんにチェック頂きたいのともっといい方法があれば 
教えてください。 
 
>.Offset(, 3).Value = c.Offset(, 3).Value 
>のコードですから、 
>呼称もということでしたら、 
>.Offset(, 1).Value = c.Offset(, 2).Value 
>も追加するといいということになります。 
>ここが応用になります。 
上記の構文.Offset(, 1).Value = c.Offset(, 2).Valueは、 
C列を基準に1列目2列目を読みに行くと言うことですか? 
 
>前の仕様が原因というわけではないので、そのままにしておきます。 
>前の仕様のうち、一度入力済みのものは、「商品マスター」から参照してくるので>はなく、入力済みの値を常に参照するようにするということでいいですよね? 
上記仮に"商品マスター"のみ参照がいいなとなった場合 
何処を削除すれば宜しいでしょうか。(セル移動のコードは残しますが) 
前の仕様もいい場合もあるのですが内容により使い分けをしたいと思います。 
 
最後にもう一つあるのですが 
>MsgBox "単価種別が違います [" & Range("L1").Value & "]" 
この条件とはどういう状態の時にでますか。 
"単価が見つかりません"は"商品マスター"にデータがないときでましたが? 
いくつもの質問ですがお付き合い下さい。 
よろしくお願いします。 
 
 | 
     
    
   |