|
▼かみちゃん さん:
かみちゃんおまたお世話賭けます。
>こんにちは。かみちゃん です。
>
>>VBAの大先輩の皆さん
>
>まず、はじめにこういうことを書かれると、コメントが書きにくくなります。
>ここの掲示板では、先輩や後輩など上下関係はないと思います。
>私を含めて、多くの方は、みんな勉強するためにコメントを書いていると思いますので・・・
また気分を害するようなことを書きましてすみません。
>>sheet5に"商品マスター"を作成し、sheet3の"内訳明細"の
>>A列とB列の2つの条件が一致したら
>>C列とE列に呼称・単価を記入したい
>
>Findメソッドを使います。
>まず、A列に一致するセル位置を検索し、一致したらB列と一致しているかチェックし、
>一致していたら、そこで検索終了し、
>一致していなかったら、次のセル位置を検索する
>という考え方になります。
>詳しくは、Findメソッドのヘルプの使用例にコードが載っていますので、
>確認してみてください。
イメージだけですが↓こんな感じ?・・・・・
For Each R In Range(Worksheets("商品マスター").Range("C2"), Worksheets("商品マスター").Range("C65536").End(xlUp))
For Each ws In ThisWorkbook.Worksheets
If InStr(1, ws.Name, "内訳明細") <> 0 Then
Set F = ws.Range("IV:IV").Find(R.Value, , xlValues, xlWhole)
If Not F Is Nothing Then
With Worksheets("内訳明細")
.Range(.Cells(3), .Cells(5)).Value = _
ws.Range(ws.Cells(F.Row, 3), ws.Cells(F.Row, 5)).Value
End With
>
>>どうしても商品名が3千〜4千ありますので、VBAで作成したいのですが
>
>品名、形状の組み合わせで重複するものはないということでいいですよね?
はいありません。
>>1.最初にinputboxで単価設定(1.一般チャンネル・2.同業チャンネル・
>> 3.特別チャンネル)を実行したい。
>
>ちょっとわからないのですが、
>InputBoxで
>"1"を入力したら、一般チャンネルということで「単価一般」の単価を、
>Sheet5のD列から取得する
>"2"を入力したら、同業チャンネルということで「同業単価」の単価を、
>Sheet5のE列から取得する
>"3"を入力したら、特別チャンネルということで「特別価格」の単価を、
>Sheet5のF列から取得する
>ということでしょうか?
↑はいその通りです。
>> または(ファームのボタン選択可能にしたい)
>
>ファームとは、フォームのことで、UserFormのCommandButtonやOptionButtonのようなものの
>ことでしょうか?
>それとも、シート上に配置するボタンのことでしょうか?
>シート上に配置する場合でしたら、何かと面倒なのですが・・・
入力前に単価種別の設定をしなくてはなりませんのでこの書き方になりましたが
これは面倒であれば無くても結構です。
ただ下記にあるように現在どの単価で入力中なのかまた後日データを
開いたときにどの単価設定だったのか確認の為に"L1"あたり帳票の構成上に
表示しておきたいと思ってます。
>> そのときに現在のチャンネルをsheet3"内訳明細"の"L1"に表示。
>
>L1に表示の例示がないので、よくわかりません。
>L1ではなく、L列に表示したいということでしょうか?
L列でなくL1です。例としては"一般"・"同業"・"特価"です
>>3.[#41557]のcase3の条件を満たしたい。
>
>意味がわかりません。
>[#41557]でのコードの機能は残したいということでしょうか?
はい同機能は残したいと言うことです。
>>4.[#41638]下記です。
>
>意味がわかりません。
>[#41638]でのコードの機能は残したいということでしょうか?
はい同機能は残したいと言うことです。
>
>>以上です、検討の程よろしくお願いします。
>
>最後に、もうひとつ、「検討の程」というのは、kazuoさんがすることです。
>その過程でわからないところがあれば、みんなで手伝いましょうというのがここの
>掲示板の役割だと思います。
>あくまで、仕様提示したら、コードを「検討」して提示するような、コード作成依
>頼場所ではないので、その点、ご配慮いただければと思います。
書き方が変ですね考えるのは私の方なのですが、なにせ技術力が伴わないもので
こういう表現になってしまいました。何とぞよろしくお願いします。
>今回のコメントは、質問内容の確認とFindメソッドというヒントを提示させていた
>だきましたので、もう少し考えてみていただけますでしょうか?
過去ログ・ヘルプをFindがどういうものなのかは理解しましたが
即コードの実現までは及びません。お知恵をおかしくだされ。m(_ _)m
上記の説明で仕様?はわかりますか。・・・
|
|