0

VBA初心者です。以下のような Excel トラッカーがあります。

S.NO    REGION  ASSOCIATE   DATE RECEIVED   SLA TIME BUY    DELIVERED DATE  STATUS
1   ME           7-Mar-13                 ED    10-Mar-13             
2   ME           7-Mar-13                    10-Mar-13    
3   AFRICA           7-Mar-13                    9-Mar-13   
4   AFRICA           7-Mar-13                 AE    12-Mar-13   
5   ASIA             8-Mar-13                    11-Mar-13  
6   ASIA             9-Mar-13                 QR    15-Mar-13   
7   AFRICA           10-Mar-13                   14-Mar-13
8   ASIA             10-Mar-13                   16-Mar-13  
9   ME           10-Mar-13                   14-Mar-13  
10  ASIA             10-Mar-13                DH    17-Mar-13   

Region 列の Date Received と Time buy 列の値に基づいて、SLZ 列に日付を入力する必要があります。条件は以下のとおりです。

条件:

  1. 地域が ME の場合、チケットは 7 日に受領され、これは 3 月 9 日に配達される必要がありますが、ED が列 FI にマークされているため、作業を完了するためにもう 1 日余分に取得され、10 日にこれを配達するとステータス メッセージが表示されます。 WSLA を表示する必要があります。
  2. チケットが 7 日に受領され、これが 9 日に配達される必要があり、列 F にデータがない場合、配達日が 3 月 9 日以降の場合、メッセージ O SLA を取得する必要があります。
  3. 地域がアフリカの場合、チケットは 7 日に受領され、これは 9 日に配達される必要があり、列 f にマークされたデータはありません。SLA と配信が一致するため、コメントは W SLA でなければなりません。このケースが 7 日に受信された場合は 9 日に受信されるはずですが、列に AE と記載されているように、あと 1 日は SLA と見なされます。しかし、まだ配信日は 3 月 12 日で、これは 2 日遅れです。私のコラム H は OSLA と言わなければなりません。
  4. これはアジア I のケースです。これを配達するのに 4 日かかります。しかし、私は 1 日 b4 を達成しました。私の solumn H は W SLA と言う必要があります。

最後に、レポートは次のようになります。

S.NO    REGION  ASSOCIATE   DATE RECEIVED   SLA TIME BUY    DELIVERED DATE  STATUS
1   ME      7-Mar-13    9-Mar-13              ED    10-Mar-13   W SLA
2   ME      7-Mar-13    9-Mar-13                 10-Mar-13           O SLA
3   AFRICA      7-Mar-13    9-Mar-13                 9-Mar-13            W SLA
4   AFRICA      7-Mar-13    10-Mar-13             AE    12-Mar-13            O SLA
5   ASIA        8-Mar-13    11-Mar-13                11-Mar-13           W SLA
6   ASIA        9-Mar-13    14-Mar-13             QR    15-Mar-13       O SLA
7   AFRICA      10-Mar-13   14-Mar-13                14-Mar-13           W SLA
8   ASIA        10-Mar-13   16-Mar-13                16-Mar-13           W SLA
9   ME      10-Mar-13   14-Mar-13                14-Mar-13           W SLA
10  ASIA        10-Mar-13   17-Mar-13             DH    17-Mar-13   W SLA

誰かマクロを教えてください。少なくとも 1 つの条件チェック用のマクロを取得できれば、他の条件用に再作成できると思います。

4

1 に答える 1

0

したがって、次の線に沿って何かが必要です。

dim iCol as integer
dim iRow as integer
dim iRegionCol as integer, iTktReceivedDate as integer
'
'
iRegionCol=2 ' column 2 = column B?
iTktReceivedDate=4 ' column 4 = column D?
'
for iRow=2 to range("A1").end(xldown).row
    select case cells(irow,iregioncol).text
        case "ME"
        ' do something like IF cells(irow, iTktReceivedDate) = today() then...
        case "Africa"
        ' do Africa something
        case "Asia"
        ' do something for Asia
    end select
next

それがあなたを始めることを願っています

フィリップ

于 2013-03-14T14:03:17.170 に答える