1

約 150 個の製品の計算を作成する必要があり、各製品は約 50 ~ 60 個のサブ製品で構成されています。副産物が外部ソースから生産されるか購入されるかに応じて、価格は異なる方法で計算されます。基本的に、製品に含まれる各サブ製品の重量と価格をコピーして貼り付け、ソースが何であるかを判断する必要があります。

同じフォルダー (すべての異なるワークブック) で以前に作成された計算を Excel で確認し、ワークブックの 1 つにセルが見つかった場合は、現在開いているワークブックに重量、価格、ソースをコピーして貼り付けたいと思います。セルを比較する方法が完全にわかりません。一致が見つかった場合は、それを適切な場所にコピーします。ここでは .Find と .FindNext が役立つと思いますが、それらの使用方法は完全にはわかりません。

以下は、私のデータがどのように構造化されているかの例です。 ここに画像の説明を入力

そして、これは私がこれまでに見つけたものです:

    Sub RunCodeOnAllXLSFiles()
            Dim lCount As Long
            Dim wbResults As Workbook
            Dim wbCodeBook As Workbook


       Application.ScreenUpdating = False
       Application.DisplayAlerts = False
       Application.EnableEvents = False

       On Error Resume Next
           Set wbCodeBook = ThisWorkbook
               With Application.FileSearch
                    .NewSearch
                    'Change path to suit
                    .LookIn = "C:\ahjualune\stuff"
                    .FileType = msoFileTypeExcelWorkbooks
                    'Optional filter with wildcard
                    .Filename = "*NAV*.xls*"
            If .Execute > 0 Then 'Workbooks in folder
                For lCount = 1 To .FoundFiles.Count 'Loop through all
                    'Open Workbook x and Set a Workbook variable to it
                    Set wbResults = Workbooks.Open(Filename:=.FoundFiles(lCount), UpdateLinks:=0)

                    'DO YOUR CODE HERE
                    With ActiveSheet
                             For Each c In .Range("B2:B90").Cells
   ' problematic place         If c.Value = Then


                                  End If
                            Next c
                    End With

                    wbResults.Close SaveChanges:=False
                Next lCount
            End If
    End With
    On Error GoTo 0
    Application.ScreenUpdating = True
    Application.DisplayAlerts = True
    Application.EnableEvents = True
    End Sub
4

2 に答える 2

0
  • これは、あなたが150個の製品を持っていたという質問から私が理解したものです.
  • 各製品には 50 ~ 60 のサブ製品があります。
  • 各サブ製​​品の重量と価格が表示されます。その種類のサブ製品のセット数に基づいて、セットあたりの価格とセット数を掛けて、そのサブ製品の合計価格を求めます。
  • その後、すべてのサブ製品の価格を追加して、1 つの製品価格を見つけます。

これがあなたが探しているものなら、私には1つのアイデアがあります。

すべての主要な製品タイプを 1 つのワークブックのシート 1 に配置します。

2 枚目以降は、各商品のサブ商品を 1 枚のシートにまとめます。Excel シートの数式を使用して、価格を乗算およ​​び追加します。

サブ製品の価格をシート 1 にコピーするマクロを記録します。

于 2012-09-06T17:59:46.643 に答える
0

ソースを変数に格納する

現在の行の価格を計算する - 変数に追加する

ソースが変更されたときは、右側の列に合計を入れます

たぶん次のようなものを使用します

range("A2").select

dim sSource as string
dim dPrice as decimal
Dim dWeight as decimal
dim dtotal as decimal

Do Until ActiveCell = ""
    sSource = ActiveCell.Offset(0,8).value
    dprice = Activecell.offset(0,7).value
   Activecell.Offset(1,0).Select
   etc.....
   when your source changes write out to a column to the right...or something like that
Loop 

申し訳ありませんが、あなたのために完全なコードを書く時間はありません...しかし、あなたをパスに乗せようとしています...

于 2014-04-09T17:27:35.953 に答える