| 
    
     |  | >1つめは >
 >>  ws2.Range("A5:BD" & iLast * 6 + 4).ClearContents
 >
 >マクロの実行を行うとこちらの式でエラーが出ました。
 >範囲をA5:BD35と指定をしても同じようにエラーが出ます。
 >何か解決策はありますでしょうか。
 
 元のコードからselectionを省略しているだけなので原因不明です。
 エラーメッセージの内容を教えてください。
 
 
 >2つめに
 >
 >>    'If (ws1.Cells(a, 4).Value = "カット" Or ws1.Cells(a, 4).Value = "カラー") _
 >>    And ws1.Cells(a, 14).Value = "予約可" Then
 >>    'よくわからないのでとりあえずコメントアウト
 >>      For j = 1 To 2
 >>        For i = 1 To iLast
 >>          Set rng = ws2.Cells(i * 6 - 1, j * 4 - 3 + clmnplus)
 >>          If rng.Value = "" Then
 >>            rng.Value = ws1.Cells(a, 6).Value
 >>            ws2.Cells(rng.Row + 2, rng.Column + 3).Value = ws1.Cells(a, 4).Value
 >>            GoTo 脱出
 >>          End If
 >>        Next
 >>      Next
 >>    'End If
 >
 >こちらの条件式で実行をした場合に”トリートメント”予約の方も出てきました。
 >作成いただいた表はカットとカラーを抽出したいのですが、もとのCSVデータには(a,4)にトリートメントの方も含まれております。どのようにすれば指定できるのでしょうか。
 
 カットやカラー、トリートメントがどういう条件で分けるのか不明なため条件を時間だけに絞ってほかはコメントアウトしているからです。
 コウさんのコードでわかる条件は
 1.カットもしくはカラーである。12時である。予約可である。
 2.カットもしくはカラーである。12時である。要確認である。
 3.カラーもしくはトリートメントである。12時ではない。
 この3つだけです。
 回答者からすると「じゃぁトリートメントで12時のときは?カットで12時以外のときは?」となるわけです。
 条件分けするとき(特に自分以外がコードを見る必要がある時)は条件を漏れなく書きましょう。
 
 
 >最後に同じ時間帯の枠(例えば9;15の枠の中)の中で、
 >同じ方が繰り返し入ってきました。
 >この繰り返しを止める方法はございますでしょうか。
 >
 >ご面倒ばかりおかけして申し訳ございません。
 >ご指導のほどよろしくお願いします。
 
 同じ人が繰り返し入る場合はつまりws1に重複したデータが複数行入っているということです。
 重複したデータを削除してから実行してください。
 
 |  |