• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルでVBAを使ってセキュリティカードのデータ管理をしたい)

エクセルVBAでセキュリティカードのデータ管理を簡素化する方法

このQ&Aのポイント
  • VBAを使ってセキュリティカードのデータ管理を簡素化する方法について紹介します。セキュリティカードの導入を検討している場合、手作業での登録作業が面倒であり、VBAを活用することで登録を簡単に行うことができます。
  • 具体的な流れは以下の通りです。まず、CSVファイルとクリップボードにコードデータを保存します。次に、エクセルの管理表を開き、VBAプログラムを起動します。プログラムは自動的にCSVファイルのデータを読み込み、該当するセルにコードデータを割り当てます。最後に、該当したセルの横にクリップボードにコピーされているデータを貼り付けます。このようにすることで、手作業でのデータ管理作業を効率化することができます。
  • VBAを使ってセキュリティカードのデータ管理を簡素化する方法を紹介しました。手作業でのデータ管理作業が面倒である場合は、この方法を試してみてください。VBAを使うことで、登録作業を簡単に行うことができます。

質問者が選んだベストアンサー

  • ベストアンサー
  • kenpon24
  • ベストアンサー率64% (66/102)
回答No.1

レス付かないですね。それほど大変な課題でもないと思うんだけど。。 CSVファイルに不明点がいくつかあります。 CSVには個人コードと何か貼り付けるべきデータがあるものと仮定して書いてます。 クリップボードについては参照設定が必要です。参考URLを参照してください。 Sub Test() Dim myDO As MSForms.DataObject Dim fname As String Dim ClipCodeData As String Dim CodeData As String Dim PersonalCode As String Set myDO = New MSForms.DataObject With myDO .GetFromClipboard ClipCodeData = .GetText(1) End With Set myDO = Nothing 'csvを選択させるダイアログを開く 固定なパスに固定な名前でよいなら 'fname= "C:\xxx.csv"でもよい fname = Application.GetOpenFilename(FileFilter:="csvファイル,*.csv") If fname = "False" Then Exit Sub Application.ScreenUpdating = False Workbooks.Open (fname) 'コードデータを代入する どの程度のセルにわたっているのかが不明なため仮にA1とする PersonalCode = Range("A1") CodeData = Range("B1") Workbooks(Dir(fname)).Close savechanges:=False ThisWorkbook.Activate Application.ScreenUpdating = True 'A列から検索する Columns("A:A").Find(What:=PersonalCode, After:=Range("A1"), LookIn:=xlFormulas, LookAt:=xlWhole, _ SearchOrder:=xlByRows, SearchDirection:=xlNext).Select 'CSVのコードデータとクリップボードのデータを貼り付ける Selection.Offset(0, 2) = CodeData Selection.Offset(0, 3) = ClipCodeData End Sub

参考URL:
http://www.moug.net/tech/exvba/0150091.htm
7-samurai
質問者

お礼

お手数をおかけします。 知らない技術がたくさんあるので勉強しつつ完成させていきたいと思います。 ありがとうございました。

その他の回答 (1)

  • kenpon24
  • ベストアンサー率64% (66/102)
回答No.2

書き忘れましたが、初心者ということなので一応実装手順を補足します 1.管理票のエクセルに標準モジュールを追加し、VBEの参照設定を行います。 2.標準モジュールに記述したコードを書きます。 3.CSVから引っ張るべきデータを書き換えます。個人コードをPersonalCodeに、紐付けるべきデータをCodeDataに入れます。 4.ワークシートにボタンを追加してマクロを登録するなり、ショートカットキーに割り当てるなどします。 これで動くと思います

7-samurai
質問者

お礼

お礼が遅くなりまして申し訳ございません。 最初の回答を頂いた後、自分なりに理解につとめ、半日程度で目的のものを完成出来ました。 締め切るのが遅く、お気を遣わせてしまったようで申し訳ございません。 このたびは、ありがとうございました。

関連するQ&A