仕事と子育てを両立。働くママを、もっと笑顔に!>>

初めて質問させて頂きます。
よろしくお願い致します。

エクセルにてバーコードcode39を作成しバーコードリーダーで読み取りたいのですが私の会社はモジュラス43が付与されているcode39しか読み取ることが出来ません。
エクセルにてセルに入力した数字にモジュラス43を付与できるマクロ解るかたあれば教えて下さい。

色々試したのですがどうしても作ることが出来ませんでした、お願い致します。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

ユーザ定義関数例です。


標準モジュールにサンプルコードを貼り付けてお試しください。
仮にA1に文字(半角)入力とすると、=mdl43(A1)


Function mdl43(rng)
Dim lst, i As Long, j As Long, tot As Long
lst = Split("0,1,2,3,4,5,6,7,8,9," & _
"A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z," & _
"-,., ,$,/,+,%", ",")
For i = 1 To Len(rng)
For j = 0 To UBound(lst)
If Mid(rng, i, 1) = lst(j) Then tot = tot + j
Next
Next
mdl43 = rng & lst(tot Mod 43)
End Function
    • good
    • 1
この回答へのお礼

mu2011様

早速のご回答ありがとうございます。
教えて頂いたユーザー定義関数でcode39のチェックデジット付与されたバーコード作成することができました。
mu2011様のお陰で正確かつ迅速な業務が出来るようになりました。
本当にありがとうございました。

お礼日時:2013/05/22 22:16

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qモジュラス103の算出方法について

現在、チェックディジット算出モジュールを作成しようとしています。
CODE128で使用されるモジュラス103を計算する場合、スタートコード[CODE-A],[CODE-B]などの非データキャラクタも計算に含まれるようで
そこで行き詰ってしまいました。
ASCII値のない非データキャラクタをプログラム中でどう処理すればいいのかがわからないのです。

[CODE-A]や[FNC1]などの非データキャラクタはデータ中でどのような値として存在しているのでしょうか?

Aベストアンサー

こちらは参考になるでしょうか?
http://www.kishugiken.co.jp/reading/barcode/barcode4.html

QExcelの Microsoft バーコードコントロール 14.0

ExcelのVBAを使って、バーコード、下記のようなデータを入れたら、
画面上にバーコードを表示、と同時に印刷をして、バーコードリーダーで
読み取ることを可能にしたいと考えております。

データ: 「123456789012」 12桁の数値

セルに12桁の数値を入れて、適当なボタンを押すと、数値の入ったセルの下方に
バーコード表示させる、といったイメージです。

PCには、Microsoft バーコードコントロール 14.0が入っておりました。
これを選択すると、マウスが+になり、シート上でクリックすると
確かにバーコードが現れるのですが、不明なデータです。
どこをどのように変えれば、データが変わるのかも、よくわかりません。

結局、「Microsoft バーコードコントロール 14.0」の使い方がわかっていないのです。
宜しく、ご教示願います。

Aベストアンサー

Sub macro1()
Dim o As OLEObject
  With Cells(2, 1)
    Set o = ActiveSheet.OLEObjects.Add(ClassType:="BARCODE.BarCodeCtrl.1", _
          Link:=False, DisplayAsIcon:=False, _
          Left:=.Left, Top:=.Top, Width:=.Width, Height:=.Height)
    o.LinkedCell = .Offset(-1).Address
  End With
End Sub

Qモジュラス103の計算とは何でしょうか?

UCC/EAN128バーコードでチェックデジットを計算する際、「モジュラス103で計算しております」というものをネットでよく目にします。
そこで質問なのですが、モジュラス103の計算方法とはどういったものなのでしょうか?
どなたかわかる方がおりましたら、ご教授下さい。
よろしくお願い致します。

OS:WindowsXP Professional SP1
開発言語:C#(VisualStadio.NET2003)
使用帳票:ActiveReports for .NET ProfessionalEdition

Aベストアンサー

これがわかりやすいかも。
http://www.kishugiken.co.jp/topics/barcode/barcode13.html

この手のものを扱われるなら、流通システム開発センターの販売資料を入手されておくことをお勧めします。
http://www.dsri-dcc.jp/hannbai/dccma.htm

参考URL:http://www.kishugiken.co.jp/topics/barcode/barcode13.html,http://www.dsri-dcc.jp/hannbai/dccma.htm

QOracle(オラクル)で、日付時刻型の検索方法について

質問させていただきます。
データベースはオラクルを使っていて、
SQL文で、抽出するときにエラーが出て困っています。

日付時刻型が「2005/05/26 19:13:00」という感じで入ってます。
2005/05/26 を抽出したいのですが、
BETWEEN '2005/05/26 00:00:00' AND '2005/05/26 23:59:59'

だと、エラーでできません。
どなた様か、ご教授よろしくお願いしますm(_ _)m

Aベストアンサー

日付検索を行う場合は、以下のように書式を含める必要があります。

col BETWEEN TO_DATE('2005/05/26 00:00:00','YYYY/MM/DD HH24:MI:SS') AND TO_DATE('2005/05/26 23:59:59','YYYY/MM/DD HH24:MI:SS')

ただ、厳密には

col >= TO_DATE('2005/05/26', 'YYYY/MM/DD')
AND
col < TO_DATE('2005/05/27', 'YYYY/MM/DD')

と書くべきでしょうね。

QチェックディジットCheckDigitの算出ルーチン

以前業務系の開発で任意の値(数字)を渡すとチェックデジットを付加して返す、というFunctionを使っていたのですが、同等の機能を持った関数を誰か教えてください。

サンプルのソースが載っているサイトでもかまわないので、誰かご存知の方教えて頂けないでしょうか。

Aベストアンサー

これは自作するものです。有名でよく使われるにしても、業務用の特殊な限られた用途のもので、VBの(汎用?)関数までにはなってません。
「モジュラス10」を例にとると、この語句でWEB照会すれば、沢山解説が出ます。OKWAVEなんかの回答の比じゃない。
http://www.technical.or.jp/handbook/chapter-4-10.html 
http://www.aimjal.co.jp/gizyutu/barcode/nw-7.htm
http://www.ebisudo.co.jp/index.cfm/4,346,81,html
他多数。

Qエクセル マクロで指定フォルダを開く

エクセルにて
指定フォルダを開く、マクロがあれば教えて頂けないでしょうか。
よろしくお願いいたします。

Aベストアンサー

こんにちは。

こういうものですか?
開くフォルダを変えたいときは targ に与えるパスを変更します。

Sub OpenFolders()
Dim targ As String
targ = "C:\"
Shell "C:\Windows\Explorer.exe " & targ, vbNormalFocus
End Sub

QEXCEL VBAマクロ作成で、他のEXCELからデータを取り込みたい

メインプログラム(EXCEL VBA)より、
他のフォルダーにあるEXCELの項目の内容を取り込みたいです。
たとえば他のフォルダーのEXCELのRange("A2:A3").ValueをメインプログラムのRange("C2:C3").Valueにセットしたい時です。

・コマンドボタン押したら、どこのEXCELから取り込むかのポップアップ(?)は、表示はできてます。
・作業者が選んだパスとブックもMsgBoxで表示できてるので、もらう相手の場所も取得できてます。

・となると次はOPEN,INPUTですか?
テキストデータの取り込みですと、Inputでそのバッファを定義してるのですが、なんか違うような。。。

よろしくお願いします!

Aベストアンサー

私がやる方法です。

Dim writeSheet As Worksheet ' 自分自身の書き出し先シート
Set writeSheet = ThisWorkbook.Worksheets(1) ' Sheet1 を参照

Dim readBook As Workbook ' 相手ブック
Set readBook = Workbooks.Open(filename) ' 相手ブックを開いて参照
Dim readSheet As WorkSheet ' 相手シート
Set readSheet = readBook.Worksheets("sheetName") ' 相手シートを参照
' または Set readSheet = readBook.Worksheets(sheetIndex)

' 例えば
writeSheet.Cells(1, 1).Value = readSheet.Cells(2, 2).Value ' 相手シートの B2 の値を自分自身の A1 に書き込む

readBook.Close False ' 相手ブックを閉じる
Set readSheet = Nothing
Set readBook = Nothing

私がやる方法です。

Dim writeSheet As Worksheet ' 自分自身の書き出し先シート
Set writeSheet = ThisWorkbook.Worksheets(1) ' Sheet1 を参照

Dim readBook As Workbook ' 相手ブック
Set readBook = Workbooks.Open(filename) ' 相手ブックを開いて参照
Dim readSheet As WorkSheet ' 相手シート
Set readSheet = readBook.Worksheets("sheetName") ' 相手シートを参照
' または Set readSheet = readBook.Worksheets(sheetIndex)

' 例えば
writeSheet.Cells(1, 1).Value = readSheet.Ce...続きを読む

QEXCEL VBAで計算値を四捨五入、切り上げ、切捨てする方法

ネットで探してみたのですが、計算結果を四捨五入して特定のセルを
返すにはどうしたらいいのでしょうか?

Sub hokangosa()

Dim ZPS As Double
Dim ZPOS As Double
Dim DMN As Double
MsgBox (" >>> 補間誤差自動計算 <<< ")
MsgBox (" >>> 初期値入力します <<< ")
ZPS = InputBox(">>> ステップを入力してください<<<")
ZPOS = Sheet1.Cells(22, 4).Value
DMN = ZPOS / ZPS
Sheet1.Cells(23, 6).Value = DMN
End Sub

ここでDMNの値を四捨五入したいです。

またこれとは別に切上げ、切捨ても教えていただけるとありがたいです。

Aベストアンサー

DMN = Application.WorksheetFunction.Round(ZPOS / ZPS, 0)
で、四捨五入
DMN = Application.RoundDown(ZPOS / ZPS, 0)
で切り捨て
DMN = Application.RoundUp(ZPOS / ZPS, 0)
で切り上げです。

引数で、対象桁を変更できます。

Qバーコードコントロールが印刷時に反映されない

いつもご丁寧な回答をくださりありがとうございます

エクセルにバーコードを埋めて書類を作っているのですが
(主に上紙に使用)

バーコードのリンクセルで指定したセルに新しい番号を入れ
デザインモードを終了すると

画面上は新しいバーコードが表示されるのですが
印刷プレビューと印刷そのものにうまく反映してくれません

なにか設定的なものが間違えているのでしょうか

文章が稚拙で申し訳ありませんが回答のほどよろしくお願いします。

Aベストアンサー

エクセルにおいてはバーコード画像は、「セルの値」ではないという認識が質問者にはありますか。
いわゆる「オブジェクト」扱いです。セルの値とは別世界のものです。
エクセルは「セルの値」を中心に処理するソフトです(エクセルの進歩の沿革からも)。これはエクセルの基礎的なことです。
ですからエクセルに画像を印刷する機能があるにしても、特別な指定をしないとをしないとだめと考えるべきです。
画像で右クリクー図の書式設定ープロパティーオブジェクトを印刷するーOK です。
この後、印刷プレビューをだすー印刷するでどうなりますか。これで解決しますか。
http://pc.z-kikaku.jp/excel/logs/2007/04/post-7.php
など。
ーーー
>バーコードのリンクセルで指定したセルに新しい番号を入れ
の意味を、実例を出して、説明しておいたほうが良いのでは。

Qバーコードのサイズは拡大縮小可能?

失礼します、急ぎでおうかがいしたいので宜しくお願いします。

イラストレーターでバーコードラベルを作る際に、バーコード作成ソフト(フリーソフトです)を使って作ったはいいのですが、横幅がそのラベルのサイズに入りませんでした。この場合、バーコード自体のサイズを若干小さくしても読み取りは可能なのでしょうか??縦はかえても良さそうなものですが。。。

以上宜しくお願い致します。

Aベストアンサー

バーコード(JAN:JIS-X-0501)の寸法は決められています。
13桁タイプの規定寸法はナロー幅0.33mm(バーコード全体の高さ22.86mm、幅37.29mm)になっていて、この寸法の0.8倍~2.0倍までが利用可能になっています。

詳しくはJISの規格書を読むか、簡単なことであれば参考URLなどを見てください。
http://www.jisc.go.jp/app/pager?id=35339

参考URL:http://www.keyence.co.jp/barcode/basic/chishiki3.html


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング