Shujima Blog

Apple製品,技術系の話をするブログ

C#で書いたライブラリをExcel VBAから使用する(COMコンポーネント)

メモ書きで品質の低い記事ですが,日本語の情報がまったく見つからなかったので,とりあえずエラーの対処法だけ公開しておきます.

やりたいこと

C#で書かれた.NET Frame workのライブラリをExcel VBAから呼び出したい.

環境

  • Windows 10 Pro 1909 18363.628
  • Excel 2013 (15.0.5111.1000) MSO (15.0.5111.1000) 64ビット
  • Visual Studio Express 2017 for Windows Desktop
  • PCにインストールされている.NET Framework 4.8.03752
  • プロジェクトで設定したターゲットフレームワーク : .NET Framework 4.6.1

やってみたこと

COMコンポーネントを使用するのがいいらしい.

おもにこちらのサイトなどを参考にしたが...

www.atmarkit.co.jp

blog.livedoor.jp

qiita.com

全てうまく動かなかった...

エラーと解決策

コンポーネントが正しく登録されていません

f:id:masa_flyu:20200510163442p:plain ヘルプを開くと「ActiveX コンポーネントが正しく登録されていません(エラー336)」と出てくる

解決策

↓ 以下の「コメント欄」に解答があった

csharphelper.com

f:id:masa_flyu:20200510163638p:plain

プラットフォームターゲットが標準だと「Any CPU」になっている.

64bit版のOfficeではこれを「x64」にしないと動かない

アセンブリ ""を登録できません -アクセスが拒否されました.

1回目はうまくいったのに,2回目以降なぜかビルドが通らなくなる.

解決策

原因はシンプルで,作ったdllを参照しているプログラムがいると,新しいファイルを上書きできない.

Excelを閉じるか,Excelの参照設定から作ったdllのチェックを外すとOK.

編集予定

今作っているプログラムは直接ブログに載せられないもののため,コードや画像をあげられずわかりにくい記事になってしまっています.

申し訳ないです.

作業時間が取れるときにまた更新しようと思っています.

もし更新されていなければコメントとかで催促していただけるとするかもしれません.

冷蔵庫と洗濯機をメルカリで買って新居に設置してもらった話

f:id:masa_flyu:20200127000208j:plain

最初に結論:メルカリで冷蔵庫や洗濯機を買ってみたい人へ

結論

  • 大型らくらくメルカリ便だと安心。メルカリに表示されるのは送料(大抵は7398円)込みの値段.
  • 配送には数日かかる.配達日は2日後〜10日後くらいで選べるようになっている.また,出品者にお願いしてそれ以外にもできる.
  • だいたい配達希望日10日前くらいの購入がオススメ.出品者の発送もゆとりをもてる.

冷蔵庫

  • まったく問題なし!!新品買うのがばからしい
  • 設置場所だけ掃除しておけばそこに置いてくれる
  • 自分でやることはコンセントを差すだけ

洗濯機

  • ヤマトが洗濯機の搬入設置(指定場所に置くだけ)までやってくれる
  • 本体以外に給水ホース・排水ホースがそれぞれ必要
  • 給水ホース・排水ホース・アース・コンセントの接続は自分でやる
  • 排水ホースの接続は少し大変(洗濯機を少し持ち上げる必要あり)なので,力に自信の無い人は注意
  • 最初に結論:メルカリで冷蔵庫や洗濯機を買ってみたい人へ
    • 結論
    • 冷蔵庫
    • 洗濯機
  • プロローグ
  • 家電は安く済ませたい
  • メルカリの「大型らくらくメルカリ便」について
    • 代金支払いの安全性
  • メルカリで冷蔵庫と洗濯機を買ってみた.
    • いろいろな出品
    • 購入
    • 配送
    • 到着
    • 洗濯機の設置
    • 冷蔵庫の設置
    • 洗濯機の配管作業
    • 洗濯機の配線作業
    • 冷蔵庫の配線作業
    • 動作確認
  • まとめ
続きを読む

C#で作るMac用アプリケーション (Hello World)

やること

Visual Studio for Macを使ってC#でMac用Cocoa Appを作ります.

初心者のメモ書きなので多めに見てください.

f:id:masa_flyu:20191014012901j:plain

必要な環境

  • macOS Catalina 10.15
  • Visual Studio for Mac 8.3.3
  • Xcode 11.0
  • やること
  • 必要な環境
  • プロジェクト(ソリューション)の作成
  • Xcode Interface Builderでの編集
  • Outletをつなげる
    • LabelのOutlet
    • ButtonのActionの設定
  • Hello Worldの記述
    • Labelに「Hello,World」と表示させよう
    • Buttonを使う
      • 実行結果
      • 関数の説明
続きを読む

iPad Proの12.9インチと11インチで迷って12.9インチを買った話

まえおき

iPad Pro 12.9インチ(2018, 第3世代)を買いました!

f:id:masa_flyu:20190725235729j:plain

現状使っていたiPad Pro 10.5インチ(2017)に対しての不満

  • ストレージが64GBしかない
  • Wi-Fiモデルのため外出時テザリングする必要があり面倒
  • Apple Pencilの充電方法
  • Lightning端子は嫌,USB Type-Cが良い

などの理由が重なったため,思い切ってiPad Pro 12.9インチ 512GBストレージ, セルラーモデル,第2世代Apple Pencil,Keyboard Folioの大奮発セットを買っちゃいました!!!

あらゆる場面であらゆる操作がめっちゃ快適で本当に幸せ!本当に買ってよかった!

でも私が新iPadを選ぶにあたって,本当に以下の点で迷いました...

11インチと12.9インチどっちを買うべきか

今までの10.5インチiPad Pro,いくつか不満はあれど,サイズに対する直接的な不満はありませんでした.

私はこのポイントに悩み悩み続け,この記事にあげる理由から,iPad Pro 12.9インチを選びました!

というわけで,本記事ではみなさんにどのiPad Proを買うべきか,最適な結論を導いてもらうために,私が悩んで気づいたことをまとめます.

  • まえおき
  • 11インチと12.9インチの違い:本体サイズと重量
    • 実際使ってみた感想
  • 11インチと12.9インチの違い:スクリーンキーボード
  • 11インチと12.9インチの違い:Smart Keyboard
  • なぜ12.9インチを選んだか:私の意見
続きを読む

macOS Cocoa Appでマウス操作を常に受け取る

環境

  • macOS 10.15.5
  • Xcode 10.2.1
  • Swift 5.0.1

この記事で作ったプロジェクトを前提にしています.

www.shujima.work

なんの変哲も無いCocoa Appにボタン,ラベル × 2,テキストフィールド × 2を配置したものです.

以前の記事ではフォアグラウンドの時のみマウスの値を受け取れました.

www.shujima.work

この記事ではこのプログラムを改造してバックグラウンドでも受け取れるようにします.

今回は以前の記事のおまけ(id考慮編)の手前にあるプログラムを使います.以前の記事のおまけ(id考慮編)のプログラムを作った人は元に戻しておいてください.

なお,私はXcode使用2日目の初心者です.ツッコミどころがあればコメント,お問い合わせなどをお願いします.温かい目で見てください.

この記事でやることの説明

本記事で作成するアプリケーションは

  • マウスのカーソル位置をアプリ内外で取得する
  • マウスを特定の座標に強制的に移動させる

ことができます.

  • 環境
  • この記事でやることの説明
  • Xcodeプロジェクトの設定
    • 参考
  • Xcodeにコンピュータの制御を許可させる
  • App Sandboxの設定
  • プログラム
    • 説明
続きを読む
当ブログをご利用いただく際には免責事項をお読みください。