[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『連番を表示』(VBA?)
テープライターで箱に貼るラベルを印刷させるのが有ります。 品番を入力すると箱数・入数・棚番を呼び出してきます。 新規で貼る場合、箱の数だけラベルを印刷させるための元データーを箱数分だけ増やすボタンがあり それをクリックすると以下のVBAを作動させて増成します。
Option Compare Database Option Explicit
Dim Myset1 As Recordset
Dim Myset2 As Recordset
Public Function 箱_増成() As Integer
On Error GoTo 箱_増成_Err99
Set MyDB1 = DBEngine.Workspaces(0).Databases(0)
Set MyDB2 = DBEngine.Workspaces(0).Databases(0)
Set Myset2 = MyDB2.OpenRecordset("見出し印刷", dbOpenDynaset)
Dim cnt1 As Integer
SQL = "SELECT DISTINCTROW 棚番,"
SQL = SQL & "入数,箱数"
SQL = SQL & "FROM 見出し印刷 "
SQL = SQL & "WHERE データ識別 = 'I';"
Set Myset1 = MyDB1.OpenRecordset(SQL)
Myset1.MoveFirst
Do Until Myset1.EOF
If Myset1![箱数] > 0 Then
cnt1 = 1
Do Until Myset1![箱数] = cnt1
Myset2.AddNew
Myset2![入数] = Myset1![入数]
Myset2![箱数] = Myset1![箱数]
Myset2![棚番] = Myset1![棚番]
Myset2.UPDATE
cnt1 = cnt1 + 1
Loop
End If
Myset1.MoveNext
Loop
Myset1.Close
Myset2.Close
Exit Function
箱_増成_Err99:
Exit Function
End Function
今回これとは別に入数部分を連番に出来るのを上記を元に追加したく思いますが全く分かりません。 どこかに”+1”付け加えるだけでよいのかと思いましたが違うようで変化無しでした。
A B C A B C
棚番 入数 箱数 棚番 連番 箱数
1 11 1 3 1 11 1 3
2 11 1 3 → 2 11 2 3
3 11 1 3 3 11 3 3
よろしくお願いします。 (上記コードは必要と思われる部分だけ抜き出したので、必要な部分が不足してるかも知れませんがお許し下さい)
< 使用 Excel:Excel2003、使用 OS:WindowsXP >
連番フィールドがあるかどうか説明がありませんが Myset2![連番] = cnt1 ではダメだったでしょうか。 (Mook) 2014/07/10(木) 06:55
できました。 Mookさんありがとうございました。
(VBA?) 2014/07/14(月) 14:47
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.