' 値段を取得 13:30 Dim DMN As Double
Pivotの範囲指定は飛び飛びではできませんから、
find next等を使うのでは無いかと色々してみましたが上手く出来ない現状です。 5 いはら 配達 6/20(月) 14:30 8個 最初は単純に何回もForNextで処理しようと思ったのですが、行数が Sheets(1).Range("A2")(i - 1, 4).Formula = MyCount
End Sub
Dim A(2 To 5, 3 To 4)
Sub 集計()
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ A列 B列
シートBの値取得
------------------------------------
Set OLDBOOK = ThisWorkbook
多くなると繰り返し回数も多くなり、時間もかかってしまうので、 If Not myVal2 = "_" & "_" Then
Next
返すにはどうしたらいいのでしょうか?
でもまぁ無駄になる話でもないつもりなので、時間のある時にでも、
・となると次はOPEN,INPUTですか?
├[+] Arr(1)(2) ◇ myDic.Items(2)
マクロの記録で作成した一例です。コメントを読んで、適当にアレンジして下さい。
「ある表から、もうひとつの表を参照して、新たな表を作る。」
MyTotal = Sheets(1).Range("A2")(i, 2)
End Sub, A列は名称でB列は金額でよろしいんですよねというか
t = sh1.Cells(i, "D") If Sheets(1).Range("A2")(i) = "" Then Exit For
りんご 緑 100 Arr(0) = myDic.Keys
If .Value = c1 And .Offset(0, 1).Value = c2 Then ans = ans + 1
6 14:00 みうら 4個 If Sheets(1).Range("A2")(i) = Sheets(1).Range("A2")(i - 1) Then
1つ1つ見て考えながら引用させてもらいます。
'とりあえず1982年から2036年まで対応
Set readBook = Workbooks.Open(filename) ' 相手ブックを開いて参照
Dim SH1 As Worksheet
たとえば「ああああ」なら個数 3、合計 31000 と、D4とE4に、
If Not myDic.exists(c.Value) Then 'myDicになければ
End Sub, A B C D E ←シート元
>出力用に2次元に変換するためですね?
Dim i, MyTotal As Double, MyCount As Double
Set myDic = Nothing
If myDic.exists(myVal2) Then
2 あああああ 10000
A列の文字列には重複があります。
NG 9/21
For Each r In Range("A2", Range("A65536").End(xlUp))
Dim OLDBOOK As Workbook
w(i) = Split(key, "_")
遅くなってすみません。さっそくですが
Next i
Dictionaryオブジェクトを用い、A列データをKey、B~E列データを配列でItemとして下記のコードを書きました。
シートBの値取得
私が書いたものでは、
End Sub
(デフォルトでBase 0なので通常は省略しますが)ならば、
とりあえず実用性も踏まえました。
myKey = myDic.keys ' 書き出し とりあえず2要素
nn = r.Offset(, 2).Value なし 黄色 200 以下、4行を挿入して、
7/2 ぶどう 200円
Dictionaryオブジェクトは連想配列の作成に特化したオブジェクトです。キーと値をペアで管理できる連想配列はVBAで明示的にデータを指定するときに便利。本記事ではDictionaryの基本から使いどころを解説します。 と、してみたものの、検索しても、その検索結果の隣のセルのコードをどうやって取得すればいいのかが、わかりませんでした。
MyTotal = MyTotal + Sheets(1).Range("A2")(i, 2)
6 B社 管理課 4 8000 2000
DMN = Application.RoundDown(ZPOS / ZPS, 0)
' 出来上がったデータを表示 テキストデータの取り込みですと、Inputでそのバッファを定義してるのですが、なんか違うような。。。
MyTotal = Sheets(1).Range("A2")(1, 2)
A B C 上に書いたような意味で同じように"見える"ということです。
「テーブル」という表現をやめて「表」でいうと、
は、A(2 To 5, 3 To 4)
Dim c2 As String
日付のセル書式は「日付」形式に再設定してください
商品名 商品番号 コード
>そして加算してゆく方法、
' 値段を取得 反ってわかり難い、ということのようですね。
Set readBook = Workbooks.Open(filename) ' 相手ブックを開いて参照
Next i
[5] 146 × -30 7 ううううう 15000
事前に用意したシート(配達表)の“配達”と“配達時間”が一致したら Set OLDBOOK = Nothing
これを集計すると、 の順で書き出した後に、列を入れ替えて書き出して動かしてました。(下記のコードで入れ替え。)
dicCor.Add sColor, nn 上のような樹形図が浮かび、窮屈な(かなり難しそうな)印象を受けました。
Dim c2 As String
Arrは一次元配列で、
A B C 3 あああああ 12000
'フィルター部分
こんな感じではどうでしょうか?m(_ _)m, エクセルで、指定した条件に一致するセルを含む行をすべて抜き出す方法が知りたいです。
key1 key2 key3 key4 集計1 集計2
Dim xlBook
6 いいいいい 11000
Next 以下のような事をしたいのですが、できる限り高速で最も効率の良い方法を教えていただきたいと Set SH1 = OLDBOOK.Worksheets("元")
・
End If 10 おおおおお 14000
実際の表はデータ件数が1万件を越えますのでいちいち手で入れるわけにはいきません。
全体を範囲指定して、集計したい項目をデータフィールドに追加するような対応になります。
たとえば「ああああ」なら個数 3、合計 31000 と、D4とE4に、
6 14:30 いはら 8個
'
お客様の許可なしに外部サービスに投稿することはございませんのでご安心ください。, 【Excel】VBAサンプルを実行すると、読み込んだファイルが読み取り専用になってしまう, http://www.asahi-net.or.jp/~ef2o-inue/menu/menu0 …, http://www.asahi-net.or.jp/~zn3y-ngi/YNxv20.html, http://www.voicechatjapan.com/excelvba/VBArei2.htm, http://www.asahi-net.or.jp/~zn3y-ngi/YNxv258.htm …, http://www5f.biglobe.ne.jp/~pafu/kihonweb/gozen/ …, 【VBAマクロ初心者】Excel VBAで複数ファイルをマージする際にファイルがそれぞれヘッダーの項, Exel VBA 別ブックから該当データを検索し、必要なデータを取得する方法について. If sh1.Cells(i, "D") = sh2.Cells(r, "A") Then Exit For DMN = ZPOS / ZPS
writeSheet.Cells(1, 1).Value = readSheet.Cells(2, 2).Value ' 相手シートの B2 の値を自分自身の A1 に書き込む
Application.ScreenUpdating = False
Dim writeSheet As Worksheet ' 自分自身の書き出し先シート
2 あああああ 10000
「いいいい」なら個数 2、合計 25000 と、D6とE6に入れたいのです。
ans = Evaluate("sumproduct((" & .Columns(1).Address & "=""" & c1 & _
日付数単位単価計区分
ご教示いただければ幸いです。
抽出するだけならオートフィルターでもできますが、
テキストデータの取り込みですと、Inputでそのバッファを定義してるのですが、なんか違うような。。。
また、質問文から察するに「部品表.xls」と「コード一覧表.xls」の両方を開いて処理されていますが「コード一覧表.xls」はプログラム内で開いて閉じているので実行するときは「コード一覧表.xls」は閉じて置いてください。
Dim OLDBOOK As Workbook
「いいいい」なら個数 2、合計 25000 と、D6とE6に入れたいのです。
2 あああああ 10000
’実際は40要素くらいある
Next i
Else
しかし、少し時間(列入れ替え時)かかるのと、今回は入れ替えの無いパターンなので、前は作れたのに、時間が経って忘れてしまったのか、今回は単純なパターンなのにつまづいてしまったのは、基礎が、身に付いてなかったせいと思い、そこでまた皆様のお力をお借りしたのでした。本当に忘れないようにします。私は、出張が多いので、本当にお世話になりまくりのend-uさんには、何かお土産でも渡したいと思ってます(心から)なにかよい方法(メールアドレス等)でも教えてもらえれば幸いです。今また出かけなければならないので、ここのお礼は、後ほど必ずいたします。YOKOKAMA46, end-uさん。今戻りました。バッチリです。
MyCount = 1
3 12:30 11 かかかかか 13000
myVal2 = myVal(i, 1) & "_" & myVal(i, 3) & "_" & myVal(i, 4) & "_" & myVal(i, 6)
'=====↑ ココマデ ↑================================================
Next i '=========================================================
多くなると繰り返し回数も多くなり、時間もかかってしまうので、 >>勝手に.CurrentRegionにしてますが、
Set ws = Worksheets(2) この表を別シートにA列の重複がない表として作成したいと思います。
If sumAry(orgAry(i, 2), 0) = 0 Then
以下のような事をしたいのですが、できる限り高速で最も効率の良い方法を教えていただきたいと Dim dicName As New Dictionary 12 ききききき 800
With Range("a1", Cells(Rows.Count, "a").End(xlUp)).Resize(, 2)
これを集計すると、 Dim ZPS As Double
この表で、それぞれ同じ名称の個数と合計金額を求めたいのです。
16:00 3 B社 総務課 10000 2000 1
If Sheets(1).Range("A2")(i) = "" Then Exit For
With ActiveSheet
重複しているNo.の○と×で"数2"の合計のみをみれるようにしたいんですが
Dim orgAry As Variant
このコードで目的は達成しました。
SH1.Select
と、結果を返したいと考えています。 5 13:30 Dim rtnAry() As Long
For Each c In Range(Cells(1, "A"), Cells(Rows.Count, "A").End(xlUp)) 'A列の各データについて
その前提で書きましたが。
自己レス
vntData_3 = Columns("C").Value
Dim writeSheet As Worksheet ' 自分自身の書き出し先シート
Dim ws As Worksheet Selection.AutoFilter Field:=1, Criteria1:="=ほげほげ", Operator:=xlAnd
1 配達 6/20(月)
デバッグはしてません。またオーバーフロー等あると思うのでそのあたりはご自分で。
x = .Transpose(.Transpose(myDic.items))
' 色情報を更新 ZPOS = Sheet1.Cells(22, 4).Value
End With
End Sub
3 あああああ 12000
6 いいいいい 11000
For i = 1 To UBound(orgAry, 1)
ans = .SpecialCells(xlCellTypeFormulas, xlNumbers).Count
↓のコードをコピー&ペーストしてマクロを実行してみてください。 関数で出来ればおなじみのやり方で良いのだが、既に出ているように式が長く複雑で、初心者には何をやって居るかわからない式になる。毎度週に数回このタイプの質問が出て、同じようなタイプの答えになる。Googleででも「imogasi方式」で照会すれば、過去の沢山の例と回答(そのタイプも)が出てくる。 12:00 │└ ・
その際、列が重複する場合にはB~G列は合計数値、E列は文字列を結合させます。
MyTotal = Sheets(1).Range("A2")(i, 2)
宜しくお願いします。, こんにちは
というデータがあるとして、A列が「野菜」、B列が「秋物」に合致する
Sub 集計()
VBAでやるにはどう記述したらいいでしょうか?
9 おおおおお 10000
Sub 別ブックから貼り付ける()
標準モジュールに デバッグはしてません。またオーバーフロー等あると思うのでそのあたりはご自分で。
i = 0
とりあえず実用性も踏まえました。
Dim r As Range 他のフォルダーにあるEXCELの項目の内容を取り込みたいです。
myDic.Add myVal2, myVal(i, 4)
質問はKeyが重複する場合、B~E列のデー...続きを読む, こんにち わ
myItem = myDic.items
Dim myDic As Object
またこれとは別に切上げ、切捨ても教えていただけるとありがたいです。, DMN = Application.WorksheetFunction.Round(ZPOS / ZPS, 0)
この表で、それぞれ同じ名称の個数と合計金額を求めたいのです。
'--条件をかけて選別 りんご 緑 100 シートAの値取得
7/2 すいか 300円
LBound(,2)がLBound(,2)に移るって考えればいいと思います。
Sub ItemsTest()
デバッグはしてません。またオーバーフロー等あると思うのでそのあたりはご自分で。
ActiveWindow.SmallScroll Down:=-3
やりたいことは
myVal = SH1.Range("E2", SH1.Range("A" & SH1.Rows.Count).End(xlUp)).Value
Else
りんご 赤 200
myVal2 = myVal(i, 1) & "_" & myVal(i, 2) & "_" & myVal(i, 5)