
No.5ベストアンサー
- 回答日時:
データベースクエリで差分クエリを作ってもいいですけど PowerBIを導入する
のはダメなんでしょうか。
Googleスプレッドシートなら
A列商品コード
B列使用済みコード
として
=QUERY(QUERY({UNIQUE(A1:A);UNIQUE(B1:B)},"select Col1, Count(Col1) group by Col1"),"select Col1 where Col2=1 label Col1 '差分'")
で Excelで数式使ってやるよりは速くなるかと思います。
No.3
- 回答日時:
こんにちは!
No.1さんの
>最大値を求めておけば999.999までではなく最大値までのループで済みます。
に大賛成です。
VBAでの一例です。
元データはSheet1のA列2行目以降にあるとし、Sheet2に欠番を表示させる方法にしてみました。
標準モジュールにしてください。
Sub Sample1()
Dim myDic As Object, myDic2 As Object
Dim i As Long, lastRow As Long, myMax As Long
Dim myKey, myItem, myR
Dim wS As Worksheet
Set myDic = CreateObject("Scripting.Dictionary")
Set myDic2 = CreateObject("Scripting.Dictionary")
Set wS = Worksheets("Sheet2")
wS.Range("A:A").ClearContents
wS.Range("A1") = "欠番"
With Worksheets("Sheet1")
myMax = WorksheetFunction.Max(.Range("A:A"))
lastRow = .Cells(Rows.Count, "A").End(xlUp).Row
myR = Range(.Cells(2, "A"), .Cells(lastRow, "A"))
For i = 1 To UBound(myR, 1)
If myR(i, 1) <> "" Then
myDic.Add myR(i, 1), ""
End If
Next i
For i = 1 To myMax
If Not myDic.exists(i) Then
myDic2.Add i, ""
End If
Next i
End With
myKey = myDic2.keys
myR = Range(wS.Cells(2, "A"), wS.Cells(UBound(myKey) + 2, "A"))
For i = 0 To UBound(myKey)
myR(i + 1, 1) = myKey(i)
Next i
Range(wS.Cells(2, "A"), wS.Cells(UBound(myKey) + 2, "A")) = myR
Set myDic = Nothing
Set myDic2 = Nothing
wS.Range("B1") = "登録最大ナンバー"
wS.Range("B2") = myMax
wS.Activate
MsgBox "完了"
End Sub
※ コードは長いですが、最大登録番号が極端に飛んでいなければすぐに表示されると思います。
※ 関数でないので、データ変更があるたびにマクロを実行する必要があります。m(_ _)m
No.2
- 回答日時:
商品コードがB2に書いてあって
この下に商品コードが羅列してある場合
K3から羅列されます。
Sub Macro1()
'
' Macro1 Macro
'
'
Rem 変数定義
Dim n, i, e, y, m(1000000) As Integer
Rem 変数初期化
e = 20
For i = 1 To e
m(i) = 0
Next i
For i = 3 To e + 3
n = Cells(i, 2).Value
m(n) = 1
Next i
y = 3
For i = 1 To e
If m(i) = 0 Then Cells(y, 11) = i: Debug.Print m(i); " ";: y = y + 1
Next i
End Sub
表示
マクロ
マクロの表示
Macro1
Microsoft Visual Basic for Applicationsが立ち上がる
中にコピペ
右三角で実行
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
木偏に「久」
-
過剰なオブジェクト指向脳から...
-
フィルターかけた後、重複を除...
-
1、Rstudioで回帰直線を求める...
-
Microsoft Visual Studio Commu...
-
UWSCでMOUSEORG関数が上手く処...
-
Exel VBA 別ブックから該当デ...
-
VSコードでバックスペースキー...
-
access2021 VBA メソッドまたは...
-
延長コードに粘着材はがしスプレー
-
sinカーブの表示のさせ方
-
Excel VBA素人です。VBAで図形...
-
pythonにてseleniumを使うも、...
-
ACCESS2007で環境依存文字へのR...
-
c++自作string型について
-
AccessでReplace関数を使うときに…
-
C言語について。
-
エクセルで最後の文字だけ置き...
-
Excel再起動でアドインのタブが...
-
Outlook 送受信エラー
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
フィルターかけた後、重複を除...
-
access2021 VBA メソッドまたは...
-
1日に1人がこなせるプログラム...
-
JANコードとPOSコードは同じ?
-
1、Rstudioで回帰直線を求める...
-
access2003 クエリSQL文に...
-
Exel VBA 別ブックから該当デ...
-
JavaScriptの定数名が取り消し...
-
COBOLの文法
-
VBAでファイルオープン後にコー...
-
変数名「cur」について
-
エクセルに見えない文字(JISX0...
-
オートフィルタで抽出結果に 罫...
-
Nullの使い方が不正です。
-
PreviewKeyDownイベントが2回...
-
【VB6】実行ファイルとした後、...
-
Javaの改行について
-
C# コードビハインドについて
-
Excelシート上で右クリックがで...
-
木偏に「久」
おすすめ情報