2017-07-25 6 views
1

私は開始日と終了日の完全な2つの列をチェックし、日付の間の対応する就業日で第3列を塗りつぶすVBAでいくつかのコードを実行しようとしています。日付の範囲のVBAのNetworkdays

For i = 2 To N 
Cells(i, F) = Application.networkdays(C, D) 

Next i 

上記は私がすでに試したものです。私はこのケースでNが何であるかはわかりませんが、基本的にはインポートされたデータの終わりを見つける関数です。私はアプリケーション定義エラーを取得します。アプリケーションを削除した場合。それはnetworkdaysが定義されたサブまたは機能ではないと言います。

For i = 2 To 50 
Cells(i, "F") = Application.networkdays("C", "D") 
Next i 

私はその上に実行する場合、私は0

の完全な列を取得上に私が実行した場合、#VALUE(50 Nのための一例である)

For i = 2 To 50 
Cells(i, "F") = Application.networkdays(C, D) 
Next i 

と第3列を移入

これを動作させるにはどうすればよいですか?それは非常にシンプルだが、VBAはすべてのことを不可能にするようにプログラムされているようだ! Excel 2013、2010、および2016で同じ問題

答えて

2

数式で行ごとに移動する必要があります。

Cells(i, "F") = Application.networkdays(Cells(i, "C"), Cells(i, "D")) 
+0

今ので、私は細胞その作業を取得しようとしている仕事で2時間を無駄にし、ある時点で>あなただけ入れて、それが動作しませんでした、まさに試してみました。<私はミスがどこかに型付けされている必要があり、多分細胞ではありません働く助けていただきありがとうございます。また、明日のデータ操作の次の段階に行くのは間違いありません。私は戻ってきます! –