[[20230509231010]] 『バーコード用に置換』(ジュディマリ信者) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『バーコード用に置換』(ジュディマリ信者)

こんばんわ

B列に数値や記号の羅列したものを貼り付けるのですが
C列にはそれの前後にアスタリスクを付けたものを表示させたいです。


B1 3933-4020     C1 *3933-4020*
B2 1122-3344    C2 *1122-3344*

この様にしたいのですが
C列に関数式やセルの表示形式で対応させる事は可能でしょうか?

もし、対応が無理でVBAでプロシージャなどが必要であれば
今の自分には敷居が高いですが、教えて頂ければ幸いです。。

< 使用 Excel:Excel2021、使用 OS:Windows11 >


 C1="*"&B1&"*"
 でよいのでは?
 くじら12号が好きです
(稲葉) 2023/05/10(水) 05:43:24

稲葉さん

返信ありがとうございます。名曲ですよね。

そして回答をありがとうございました!
ここから壮大な事をやるハメになりそうです。。

QRコードに対してVBAでどこまでやることになるか
また教えて頂きたいです。

参考になるサイトを色々探しております。
(ジュディマリ狂信者) 2023/05/10(水) 23:43:16


 QRコードならアスタリスクいらなくない?
 バーコードコントロール入れればいいだけだと思うんだけど・・・
https://www.pc-koubou.jp/magazine/67288
(稲葉) 2023/05/11(木) 08:22:04

 バージョンが古くてバーコードコントロールがない場合はWEBで表示し、画像を
 取り込む、という方法もあります。
 ↓はWEB表示までのコードです。
 手作業の場合、WEBに表示したQRコードをワークシート上に
 ドラッグ&ドロップで貼り付けることも可能です。

https://atmarkit.itmedia.co.jp/ait/articles/1602/26/news037.html

 Sub test()
  Dim myurl As String
  Dim qrurl As String
   myurl = "https://www.excel.studio-kazu.jp/kw/20230509231010.html"
   qrurl = "http://chart.apis.google.com/chart?chs=200x200&cht=qr&chl=" & myurl & ""
   CreateObject("Shell.Application").ShellExecute qrurl
 End Sub
(MK) 2023/05/11(木) 08:40:45

 『QRコードがコピペできない』(hiro)
https://www.excel.studio-kazu.jp/kw/20220529162012.html

 365ではExcelでもImage関数が使えるようになりました
(´・ω・`) 2023/05/11(木) 09:32:20

みなさま。たくさんのアドバイスとURLを教えて頂きありがとうございました。
社内でも任せたの一点張りでゴールがないながら進めています…

あるサイトのコードをほとんど頂いていじったものを使っています。
これをB列のセルの文字によって分岐?するのは難題でしょうか。

同じ行のB列が 
鈴木  だったら QRコードで Jの値+Lの値
池田  だったら Qrコードで  Jの値の最後に.を追加
本田  だったら QRコードで 最初に3333+Jの値+Cの値
    …    
など、
最初はバーコードとの分岐も検討しましたがサイズの関係で
リーダーが読み取りきれないのでQRコード一本でいくことにしました。

QRコードに変幻自在に情報を入れられるようになりたいですが、まだまだレベルが論外です。

Sub QRコード生成()

    Dim intTop As Long
    Dim intLeft As Long
    Dim intWidth As Long
    Dim intHeight As Long
    Dim objBarCodeSetup As BarCodeCtrl
    Dim i As Integer

                                    'J列2行目以降にある値の件数分処理を繰り返す
    For i = 3929 To Cells(Rows.Count, 10).End(xlUp).Row

                                    'B列セルの位置、サイズ情報を取得し変数へ代入
        With Cells(i, 15)
            intTop = .Top           'セル上部の位置
            intLeft = .Left         'セル左側の位置
            intWidth = .Width       'セル幅のサイズ
            intHeight = .Height     'セル高さのサイズ
        End With

                                    'BARCODE.BarCodeCtrlタイプのOLEオブジェクトを追加し、選択状態にする
        ActiveSheet.OLEObjects.Add(ClassType:="BARCODE.BarCodeCtrl.1", _
            Link:=False, DisplayAsIcon:=False, _
            Left:=intLeft + 2, Top:=intTop + 2, Width:=intWidth - 2, Height:=intHeight - 2).Select

                                    '選択したバーコードオブジェクトをオブジェクトにセット
        Set objBarCodeSetup = Selection.Object

                                    'バーコード コントロールのプロパティを設定
        With objBarCodeSetup

                                    '6はCode-39
                                    '7はCode-128
                                    '11はQRコード
            .Style = 11
                                    'J列の値をバーコードのValueプロパティへ設定
            .Value = Cells(i, 10).Value

        End With
    Next
                                             'オブジェクトを解放
    Set objBarCodeSetup = Nothing

End Sub
(ジュディマリ狂信者) 2023/05/11(木) 19:52:54


バーコードについて教えて頂いた事へのお礼を忘れていました。
ありがとうございます。

それとうまくいかなかった要因が J列は関数式が入っているせいか
バーコードにうまく変換できませんでした。

Sub バーコード生成()

     For i = 3929 To 3958 ' 3929行目から3958行目までの範囲を処理

        'バーコードフォントで数式を入力してO列に貼り付け

        Range("O" & i).Font.Name = "Free 3 of 9"

        Range("O" & i).Formula = "=""*""&J" & i & "&""*"""

    Next i

End Sub
(ジュディマリ狂信者) 2023/05/11(木) 19:56:08


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.