2016-12-30 8 views
0

Excelにデータを別のシートにエクスポートするAccessでVBAを使用しています。データはフォーマットされていないので、フォーマットするマクロを作成します。輸出は、複数の場所の在庫データ(品目の価格と手元の数量)です。自動入力は、データの最後まで自動入力された価格*数量の計算になります。場所には、シート内に同じ量のデータがありません。私はもともと、すべてのシートを一緒にグループ化し、最初のシートをオートフィルしてみました。これはうまくいかなかった。誰でもマクロやVBAを使ってこれを行うための適切な方法を私に指示できますか?Excel VBA自動入力

注:新しい在庫カウントが到着したときにデータ量が変化し、コードが最後の行として各シートの特定のセルを参照できなくなる場合があります。

ありがとうございました!

+0

どの列あなたは* price *と* quantity *のために使っていますか? –

+0

@ Garyの研究者列のDとE – KScott

答えて

0

これは製品の列Fを使用しています。各シートを選択して、このマクロを実行します。

Sub dural() 
    Dim i As Long, N As Long 
    N = Cells(Rows.Count, "D").End(xlUp).Row 
    For i = 1 To N 
     Cells(i, "F") = Cells(i, "D") * Cells(i, "E") 
    Next i 
End Sub 

例えば:

enter image description here

EDIT#1:

dural()が働いている、我々はからそれを呼び出すことができます:

Sub MAIN() 
    Dim i As Long 
    For i = 3 To Sheets.Count 
     Sheets(i).Activate 
     Call dural 
    Next i 
End Sub 
+0

コードに型の不一致エラーが発生しました。これは、列Dと列Eのデータに10進数の値があるためです。 – KScott

+0

@KScott列** D **と** E **のデータは数値でなければなりません.....列ヘッダーがある場合は、** 2ではなく** 2 ***で 'For'ループを開始します* 1 *** –

+0

素晴らしい。それは素晴らしい作品です。これを各シート上で実行する最も良い方法は何ですか?最初の2枚には他のシートの要約が含まれているので、ループに含めるべきではありません。 – KScott

関連する問題