ラベル Excel の投稿を表示しています。 すべての投稿を表示
ラベル Excel の投稿を表示しています。 すべての投稿を表示

2020-02-04

Excelのルビ振り機能を有効に使う

Excelのルビ振り機能にはちょっと変わった制約があります。
  • フォントリボン→ふりがなボタンによりルビ振りを呼び出す場合、シートに直接手入力した文字でないとルビを振ってくれない。つまりコピー&ペーストした文字についてはルビを振ってくれない
  • VBAでSetphonetic関数を使用すれば、コピー&ペーストした文字についてもルビ振りが可能(ただしWindowsのみ、Macでは不可)
なんでこんな事になってるんですかね?下記はSetphonetic関数の呼び出し例です。



2016-05-16

VBA:非同期処理を考慮したダブルクリック防止処理

GUIコンポーネントに対するユーザの操作はしばしば、こちら(開発者側)の思惑から外れることが多いです。例えばボタンなどの場合は、ワンクリックすべきところをダブルクリックしてしまったり、何度もクリックしてしまうことがあります。そのような誤操作が起きないよう工夫が開発側に求められるわけで、一般的には、
  • ボタンの無効化
が解決策として出てきます。VBAでは、クリックイベントのサブモジュールがの中でenableやlockedのプロパティをfalseにする処理を入れれば解決できます。

しかし、ボタンクリック時の処理に「非同期処理」が入ってくると厄介です。例えば、クイズゲームのプログラムで
  • ボタンをクリックした時に「ピンポーン」と音を鳴らして正誤判定をする
という処理を考えます。VBAでは、サウンド再生にはAPIを利用しますが、これは非同期処理です。つなりサウンド再生の後のコードはすぐに実行されるので、音が鳴り終わるまでは無効化しておく必要があります。そこで、waitメソッドを呼び出してコードの実行を停止すればいいのですが、その際には、
  • Doeventの呼び出しが必須
という1点だけTIPがあります。下記のコードは、クリックをしたあと3秒間はボタンを無効にするという処理を書いています。実は、Doeventを書かないと、ダブルクリックをすると、2秒後に2回目のクリックに反応してしまいます。



VBA:フォームは既に表示されているので、モーダル表示することはできませんというエラーが出た場合

Form1に配置したボタンをクリックした際に、別のフォーム(Form2)を表示するとともに、自分のフォーム(Form1)は消し、Form2に配置されたボタンを押して再度Form1を表示するという処理を考えます。
この処理を行うには、showメソッドやhideメソッドを組み合わせたらできるということは用意に想像できますが、時々、表題にあるように
  • フォームは既に表示されているので、モーダル表示することはできません
というエラーが出る時があります。これは、各メソッドの呼び出し順に注意する必要があります。結論から言えば、
  • Hideメソッドで自身(Me)を消した後に、新しいフォーム(呼び出したいフォーム)をshowする
という手順ならエラーがでることなくきちんと動きます。



2015-08-17

C#にてExcelの検索機能(Find関数)を利用する

C#からExcelのシートを検索するときには、下記のようにFind関数とFindNext関数を組み合わせればOKです。注意点としては、検索の開始位置は初期値の次の位置です。例えば、下記のコードを利用した場合、指定した列の2行目から検索が始まります。



2014-11-17

C#にてExcelのあるファイルからあるファイルへデータをコピペする

Excelのファイルを仕事が舞い込んできたので、C#でコピペ処理を書いてみました。最初の宣言部分は書いてませんので。



2012-08-30

Excel:VBA開発を有効にする

ExcelでVBAを利用する際、デフォルトでは有効になっていないので以下の手順で有効にします。

1.オプションを開く


2.リボンのユーザー設定

リボンのユーザ設定を選ぶと、右側のペインに「開発」というのがリストにあると思います。それにチェックを入れます。


3.開発リボンを確認

開発のリボンが新しくできていると思います。






Excel:分析ツールを有効にする

Windows版のExcelには統計処理のためのツール“分析ツール”が用意されていますが、標準では有効になっていません。以下はその手順です。

1.Excelのオプションを開く



2.アドインを開く

ここで、右側のペインを見ると分析ツールがアクティブになってないのが確認できます。



3.アドインを有効にする

上の画面の一番下にある「設定」ボタンを押すと、アドイン設定画面が出てきます。分析ツールにチェックをいれましょう。

 


4.「データ」リボンを確認する

データのところにデータ分析というのが出ているとおもいます。(もしかするとExcelの再起動が必要かもしれません)



P.S
Macには分析ツールが標準で入ってないんですよね。これはちょっと不便ですね。