nokotech のすべての投稿

Parallels Desktop 18 for Macの導入とカスタマイズ方法

MacのOS上でWindowsを実行させる「Parallels Desktop」というソフトがあります。

Parallels Desktopは、以前からあるソフトでMacユーザーの方には馴染みのソフトです。これまで使われている方も多いと思います。

今回、MacOS「Monterey 」に「Parallels Desktop 18 for Mac」をインストールして、Windows11を導入後、カスタマイズする方法について説明したいと思います。

元来MacのCPUがIntelプロセッサであった頃から、Macパソコンには標準でBootCampというWindows環境をインストールするユーティリティが付属していて、ハードディスクのパーティションを分割してMacOS領域とWindowsOS領域を別々に設定して、WindowsOSをインストールすることが可能でした。

しかし、近年MacのCPUが、IntelからApple M1もしくはM2というタイプに変更になったことで、実質的にBootCampが使えなくなってしまいました。

このため、最近はMac環境でWindowsを実行できる「Parallels Desktop」に注目が集まってきています。

 

 

1.Parallels Desktopとは?

Parallels Desktopは、Alludo(旧コーレル株式会社)の製品です。
※コーレル株式会社は、2022 年 9 月 13 日にAlludoにブランド名を変更しました。

最新のバージョンは、Parallels Desktop 18 for Macとなっています。
詳細は、以下のページをご覧ください。
Parallels Desktop for 18 for Mac

このバージョンの購入方法には、2つのタイプがあります。
1つは、Apple Storeから導入して、サブスクリプションとして年間定期購入するタイプと、もう1つは永続ライセンスとして購入するタイプです。

永続ライセンスは、ベクターのサイトから購入可能です。
(※ベクターでは、キャンペーン価格で購入できる時期があります。)
サブスクリプション版の場合は、Apple Storeからの購入が標準ですが、ベクターのサイトでも購入できます。

価格は永続ライセンス版が14,000円で、サブスクリプション版が約11,500円なので、長年使用したい方は、永続ライセンス版の方がお得です。
(サブスクリプション版の価格は為替の影響を受けるために一定ではないかもしれません。)

一方、サブスクリプション版は、自動でバージョンアップすることができますので、MacOSが変更されていく中で、安定的に動作するようになっています。

ちなみに、Apple Storeからインストールする場合は、試用版として14日間使うことができます。

Macパソコンをお持ちの方で、試したいという方は、Apple Storeから導入してインストールすると、自動的にWindows11がインストールされるようになりますので、試してみてはいかがでしょうか。

なお、Parallels Desktopのライセンスや、Windows11のライセンスが全くない状態でも、Windows11のインストールまで行って、14日間は試用期間として使ってみることが可能です。

話はがらりと変わってしまうのですが、Chrome EnterpriseのバージョンのChromebookに入れることができる「Parallels Desktop for Chrome OS」という製品もあります。

一般のChromebookではなくて、企業版のChromebookに対してこのアプリを入れることで、Chromebook上でWindowsを実行できるようになります。

一般のChromebookであっても、Enterprise版にアップグレードするための「Chrome Enterprise Upgrade」というサブスクリプションを購入することで、このアプリを導入することができるようです。

興味のある方は、こちらのページをお読みください。
Parallels Desktop for Chrome

 

 

2.Parallels Desktop 18 for MacのインストールからWindows11の導入まで

私の場合は、Macパソコンで、ベクターのサイトに行って、永続ライセンス版のParallels Desktop 18 for Macを購入しました。

ベクターでのソフトの購入は、まずベクターの会員登録が必要です。登録後に購入ボタンを押して購入してください。

購入すると、ライセンスキーがもらえますので、コピーして控えをとってください。

Mac上でアプリをダウンロードして、ダウンロードした「Install Parallels Desktop.dmg」を開くことでインストールが始まります。

その後、Parallelsアカウントの設定画面が出てきます。
ここでは、メール、名前、パスワードを設定してアカウントを作成してください。

インストール後は、すぐにWindows11のインストールができるように画面が出てきますので、道なりに進みます。

Parallels Desktop 18 for Mac Windows11をインストール

「MicrosoftからWindows11を入手」というところから始めるだけです。
上記の画面が出てこなくても、道なりに進むとWindows11のダウンロードの画面になります。

途中、Bootcampなどの選択肢が出てきた方は、Bootcampは使いませんので選択しないようにしてください。

Windows11のダウンロードからインストールまで、Macパソコンの性能にもよりますが、30分〜1時間程度で終わると思います。

Windows11のセットアップ画面では、マイクロソフトアカウントを設定するか、ローカルアカウントを設定するかのどちらかになります。

マイクロソフトアカウントを設定した場合は、同時にPINを作成する画面が出てきます。また、OneDriveの設定なども行われます。

その後、Windowsのライセンスキーを入力する画面になるかと思いますが、すぐに入力しなくても使えるので、保留しても大丈夫です。

Windows11のライセンスは、購入すると16,000円〜25,000円ほどするのですが、既に使わなくなったWindows7、8.1、10などのパソコンがあれば、そのプロダクトキーがあれば、Windows11のプロダクトキーとして使用することができます。

Windowsパソコンを廃棄する前に、必ずプロダクトキーは調べておきましょう!

Windows OSでのWindowsプロダクトキーの調べかたは、コマンドプロンプトを起動して、以下のコマンドを貼り付けてEnterキーを押すと、プロダクトキーが表示されます。

「wmic path SoftwareLicensingService get OA3xOriginalProductKey」

プロダクトキーをコピーして控えておきましょう。

なお、プロダクトキーのない方は、Windows11を試用版として使用できますし、試用版であっても、後でプロダクトキーを入力すればライセンスを有効にできます。

Windows11が起動すると、Macの画面上にWindowsの画面がアプリとして実行されてきます。

Windows11を終了するときは、ファインダーの閉じるボタンではなくて、Windows11のスタートボタンから電源のシャットダウンで閉じるようにしてください。

Windows11が起動した段階で、Mac画面のDockを見ると以下のようなアイコンが並んでいます。

Parallels Desktop 18 for Mac Windows11をインストール

左側がParallels Desktopで、右側がWindows11のアイコンです。

ここで、Windows11をスタートボタンから電源をシャットダウンすると、右側のWindows11のアイコンは消えますが、左のParallels Desktopのアイコンはまだ起動状態が続いています。

左のParallels Desktopのアイコンをクリックすると、画面の上部にParallels Desktopのメニューが出てきます。

メニューの「ウィンドウ」から「コントロールセンター」をクリックすると以下のような画面が出てきます。

Parallels Desktop 18 for Mac Windows11をインストール

この画面で、電源ボタンを押すことでWindows11が起動するようになります。

この画面が出ている状態で、歯車マークをクリックすると、Windows11の実行環境を変更することができます。

また、メニューの「Parallels Desktop」をクリックして「Parallels Desktopについて」をクリックすると、以下のような画面が出てきます。

Parallels Desktop 18 for Mac Windows11をインストール

この画面の「アカウント&ライセンス」のボタンを押すと、購入したParallels Desktop for Macのライセンスキーを入力して、ライセンスを取得できるようになります。

また、Windows11を起動して使用している途中で「Paralells Toolbox」をインストールするように指示する画面が出てくると思いますが、必ずインストールを行うようにしてください。

Parallels Toolboxがインストールされると、画面の右上にスパナのマークのアイコンが現れて、そこから色んなツールを使えるようになります。

Parallels Toolbox

Windows11は、アプリとして実行されているため、Macのハードディスクを一定量占有しますが、システムやプログラムやユーザーファイルなどの必要な領域に対応して、可変的に容量を調節するようになっています。

実際にWindows11をインストールしたとしても、Macのディスク上の使用量は、32GB程度とコンパクトになっています。

 

 

3.デスクトップアイコンを表示させよう

Windows11のデスクトップに、Windowsのデスクトップアイコンを表示します。

デスクトップを右クリックして、「個人用設定」をクリックします。

個人用設定の画面が開いたら、右側のリストから「テーマ」をクリックします。

テーマの画面の下の方にいくと、「デスクトップアイコンの設定」がありますので、クリックしてください。

デスクトップアイコンの設定

ここでは、コンピュータ、ユーザーのファイル、ごみ箱、コントロールパネルにチェックをして、OKボタンを押してください。

設定画面を閉じていただくと、デスクトップ上にアイコンが出ているのが確認できると思います。

 

 

4.Windows11の問題点を解決する

Paralells Desktop 18 for Macのアプリは、Windows11の導入まではとてもスムーズなのですが、一部のMacにおいては、以下のような困った問題が生じることがあります。

(1)キーボードの問題

Paralells DesktopでWindows11を導入したときに、キーボードが「英語キーボード」として認識されてしまうことがよくあるようです。

このような場合は、Windows11の設定からキーボードを日本語キーボードに切り替えるようにしてください。

Windows11 日本語キーボードへの切り替え

スタートボタン→「設定」→「時刻と言語」→「言語と地域」→「日本語」の右の3つの点をクリックして、「言語のオプション」をクリック→「キーボードレイアウト」の右にある「レイアウトを変更する」ボタンをクリックして、英語キーボードから日本語キーボード(106/109キー)に変更してOKボタンを押します。

以上の操作で日本語が入力できるようになります。

 

(2)共有フォルダの問題

初期の設定状態では、Mac側のフォルダとWindows側のフォルダが共有状態となってています。

具体的には、Mac側のデスクトップ、書類、および、Mac側のユーザー配下にあるピクチャ、ミュージック、ムービー、ダウンロードなどのフォルダがあるのですが、これらもWindows11と共有状態となっています。

このため、Windows11のアカウントフォルダを開けると、同じ名前のフォルダが2つ存在するようになっており、区別ができません。

Paralells Desktop 18 for Mac ユーザーフォルダ 共有設定の変更

この状態は、Windows側のフォルダとMac側のフォルダが混在している状態になっており、実際に使用することを考えると間違いが起きやすいと思われます。

そこで、MacとWindows11の間の共有設定を変更する必要があります。

まず、Windows11をシャットダウンします。これは、Windows11が起動している状態では、共有設定が変更できないためです。

Paralells Desktopのみが起動している状態にして、メニューの「ウィンドウ」から「コントロールセンター」を出します。

Parallels Desktop 18 for Mac Windows11をインストール

この画面の歯車のマークをクリックします。

Paralells Desktop 18 for Mac Windows11の構成 Macとの共有設定

Windows11の構成画面が出てきたら、「オプション」の中の「共有」を選択します。

最初は、画面の右側がグレーになって編集できませんので、左下隅のカギのマークをクリックして、Macパソコンのログインパスワードを入力してください。

そうすると、上記のような編集可能な状態になります。

まず、カスタマイズというボタンを押してください。

Paralells Desktop 18 for Mac Windows11の構成 Macとの共有設定

ここで、6個のチェックをすべて外してOKボタンを押してください。

Paralells Desktop 18 for Mac Windows11の構成 Macとの共有設定

次に、元の画面に戻ってきたら、今度は「フォルダを管理」のボタンを押します。

Paralells Desktop 18 for Mac Windows11の構成 Macとの共有設定

以下のような画面が開きます。

Paralells Desktop 18 for MacとWindowsの共有フォルダの選択

ここでは、上の2つのチェックがついていたら、外してください。
それから、左下のプラスのマークを押してください。

Paralells Desktop 18 for MacとWindowsの共有フォルダの選択

ここで、MacとWindows11を唯一つなぐための共有フォルダを作成します。
左側のデスクトップを選択してから、「新規フォルダ」ボタンを押して、共有するためのフォルダを作成し、名前を付けます。

ここでは、「Mac-Windows共有フォルダ」という名前をつけています。作成したフォルダを選択して、「開く」ボタンを押します。

元の画面に戻ってきます。

Paralells Desktop 18 for MacとWindowsの共有フォルダの作成

カスタムフォルダとして、先ほど作成したフォルダが設定されていることを確認して、OKボタンを押します。

元の画面に戻ってきたら、以下のようにチェックボックスのチェックを外してください。

Paralells Desktop 18 for Mac Windows11の構成 Macとの共有設定

以上の操作で、MacとWindowsの共有フォルダは、デスクトップに作成した「Mac-Windows共有フォルダのみとなります。

閉じるボタンを押してください。

そこで、コントロールセンターのWindows11の電源ボタンを押して、Windows11を起動させてください。

Parallels Desktop 18 for Mac Windows11をインストール

Windows11が起動したら、アカウントフォルダを開きます。

Paralells Desktop 18 for Mac ユーザーフォルダ 共有設定の変更

共有が解除されて、本来のWindows11のフォルダ構成になっていることがわかると思います。

この段階で、デスクトップ上のPCアイコンをクリックしてみましょう。

共有フォルダがネットワークドライブとして表示

上記のように、作成した共有フォルダが、ネットワークドライブとして登録されているのが確認できます。このドライブを右クリックして、「その他のオプションを表示」として、さらに「ショートカットの作成」を選択すると、デスクトップにショートカットが作成できます。

このフォルダに共有したいファイルやフォルダを入れると、Mac側とWindows側で簡単に共有することができるようになります。

 

 

5.その他の設定について

Paralelles Desktop上のWindows11については、基本的に通常のWindowsと同じようにアプリやサービスを導入することが可能です。

(1)プリンタの設定

Windows用のプリンタドライバをダウンロードして、インストールが可能です。

インストール途中で、プリンタの接続をMac側にするか、Windows側にするかの選択画面が出てきたら、Windows側を選択してください。

Windows11に対応したプリンタドライバがあれば、設定可能です。

 

(2)ウイルス対策ソフト

Windows11はParalells DesktopによってMac上のアプリとして動いているので、Macのセキュリティソフトで守られているように思われますが、実際にはそうではありません。

Windows11の安全を守るために、必ずウイルス対策ソフトをWindows11側でインストールしてください。インストール方法は、通常の方法と同じです。

 

(3)Microsoft Officeの導入

Officeアプリについても、特に問題なく導入可能です。Office365をお持ちの方は、Mac側とWindows側にOffice365を導入する場合は、別々にインストールする必要があります。なおMac側とWindows側の両方にインストールした場合、ライセンスは2個必要になります。

 

(4)その他のアプリの導入

Googleのサービスを使っている方は、Google Chromeを導入しましょう。

Mac側とWindows側で共通で使用できるアプリはありません。
Mac側とWindows側で別々にアプリをインストールする必要があります。

 

(5)Googleドライブの導入

Googleドライブについては、Mac側でのGoogleドライブを共有して使うこともできるのですが、Windows11単独に導入する方が簡単なので、直接導入してください。

導入後、PCアイコンをクリックすると、Google Driveのドライブアイコンが表示されています。

Googleドライブ

 

 

6.最後に

今回、Paralells Desktopというアプリを紹介したのですが、WindowsとMacの両方で作業したいという方のために書きました。

実際には、MacとWindowsパソコンを同時に使うと、ソフトの使い方に迷ったり、キーボードの使い方に迷ったり、設定方法に迷ったりすることが多々あります。

私自身は、Windowsを使うことが多いので、Windowsの方がMacよりも便利だし、使いやすいと思っていますが、一方で頻繁に来るWindows Updateにはうんざりしていることもあり、セキュリティの面からはMacの方が安心できるように思います。

今回、Mac上でWindows11を動かしているのですが、遅いという印象は全くありませんでした。これは、Macのパソコンが安定して高速で動作することと、Windows11のOSの動きが速いという点にあると思われます。

また、MacのキーボードでWindowsが使いにくいという方は、Windows用のUSBキーボードを用意していただくと、そのまま使用することができます。

USBメモリや、外付けのハードディスクなどを接続すると、Mac側で使用するか、Windows側で使用するかの選択画面が出てきますので、選択してください。

外部デバイスの外し方は、Windows側とMac側で異なるので注意してください。

それと、USBメモリやハードディスクは、Windows側とMac側の両方で使用しないようにしてください。

これら2つのOSはファイルシステムが異なるので、両方のOSで1つのUSBメモリやハードディスクを使用すると、ファイルシステムにエラーが生じて、最悪の場合壊れることがあります。

また、日本語コード自体もMacとWindowsで異なるために、ファイル名の化け文字が生じることがあります。

そのような違いを理解しながら、MacとWindowsを使用することで、それぞれのOSを正しく使えるようになっていただければと思います。

Edgeが落ちるトラブル

Windows10のEdgeが起動後すぐに落ちるトラブルを一時的に解決

パソコン教室をやっていると、会員さんのパソコンのトラブルについてよく相談を受けます。

解決可能なものもあれば、どうしても解決できないようなものもあります。

今回遭遇したのは、Windows10のパソコンにおいて、Microsoft Edgeが起動直後の数秒後に突然落ちてしまうというものでした。

 

1.Microsoft Edgeのトラブルは致命的です

Microsoft Edgeは、Windows10や11に標準で入っているブラウザソフトであり、トラブルが起きたとしても、簡単にアンインストールして入れなおすということができません。

Windows OSと深い関係にあるアプリなので、Windows UpdateなどでEdge自体のアップデートやEdgeのセキュリティなども自動でアップデートされるようになっています。

このため、昔からEdgeはWindows Updateが中途半端で終わっている場合などにおいて、アプリ自体が起動できないというようなことがよくありました。

このような一般的なトラブルの場合は、パソコンの再起動や、Windows Updateの更新などによって簡単に回復するのですが、一旦起動してから落ちるというトラブルはかなりやっかいなものでした。

パソコンを購入した方は、このようなEdgeのトラブルを想定して、Google ChromeやFireFoxなどの別のブラウザアプリをインストールしておくことを強くお勧めします。

 

2.Microsoft Edgeが起動後10秒以内に落ちる

この現象は、2022年10月のWindows Updateの後に突然現れました。

原因自体は不明なのですが、Windows Updateが引き金になっていることは確かなようでした。

ネットで検索すると以下のような対策が推奨されていました。

  1. パソコンの再起動。
  2. Windows Updateを最新にする。
  3. 設定の中の「アプリ」の中のMicrosoft Edgeの「変更」ボタンからアプリの修復を行う。
  4. Microsoft Edgeの権限のON/OFF。
  5. PowerShellからコマンドで修復。
  6. Edgeを削除して、再度インストールする。
  7. アカウントの隠しフォルダのAppData\Local\Microsoft\Edgeの中の「User Data」を削除する。

結果的には、1~6の方法では解決できませんでした。

3の設定のアプリを見ると、Microsoft Edgeをクリックしても「変更」ボタンが淡色表示になっていてクリックすることができませんでした。

4と5も効果はありませんでした。

6のEdgeの削除をコマンドから試みましたが、削除できませんでした。

7の方法については、お気に入りや登録したパスワードなどが消えてしまうということなので、試せませんでした。

 

3.最終的に、一時的に回復する方法を見つけました

完全な回復ではないのですが、一時的にEdgeが落ちなくなる方法を見つけましたので、以下に書いておきます。

(1)デスクトップ上に「Microsoft Edge」のアイコンを作ります。

(2)このアイコンを右クリックします。

(3)「互換性のトラブルシューティング」をクリックします。

(4)「推奨設定を使用する」をクリックします。

(5)「プログラムのテスト」ボタンを押します。

(6)Microsoft Edgeが起動します。ここで開いたEdgeは閉じるボタンで閉じてください。

(7)元の画面で「次へ」ボタンを押します。

(8)「はい、このプログラムのこの設定を保存します」をクリックします。

(9)「トラブルシューティングツールを終了する」をクリックします。

以上です。

この操作を行った後に、Edgeを起動すると、全く落ちなくなります。

しかし、これは完全な回復ではありません。なぜなら、パソコンを再起動すると、この状態は保存されておらず、再びEdgeが落ちてしまいます。

しかし、再度上記の方法を行うと、Edgeは落ちなくなります。

つまり、上記の方法は、起動する度に行う必要があるということになります。

もちろん面倒なことは、承知していますが、一時的にせよ安定してEdgeが開いた状態になりますので、ここでお気に入りのエクスポートや、登録したパスワードなどをエクスポートできますので、かなり余裕ができると思います。

 

4.今回のEdgeのトラブルシューティングの意味について

今回のEdgeのトラブルシューティングで回復する方法を見つけたのは、Edgeのアプリの実行ファイルのプロパティを調べたことで発見しました。

Microsoft Edge自体の実行ファイルは、

「C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe」になります。

この「msedge.exe」を右クリックして「プロパティ」の中の「互換性」タブを開きます。

Microsoft Edgeが起動直後にすぐ落ちる問題

ここに「互換性のトラブルシューティング」というボタンが用意されています。

一方、その下に「互換モードでこのプログラムを実行する」という項目がありますが、ここにチェックをして、OSを「Windows8」として、適用ボタンを押してからMicrosoft Edgeを起動してみました。

Microsoft Edgeが起動直後にすぐ落ちる問題

実は、他のWindows OSも試してみたのですが、互換モードとして「Windows8」を選択してから適用ボタンを押したときのみ、Edgeを起動しても落ちなくなりました。

このことから、互換性のトラブルシューティング自体も、互換モードで使ってEdgeが落ちなくなるように調整しているようです。

しかし、一旦パソコンを再起動してしまうと、この互換モードはリセットされてしまうようです。

 

5.今後のWindows Updateに期待するしかない

Windows OSとMicrosoft Edgeが深い関係にあることと、今回のトラブルがWindows Updateをキッカケとして起きたことを考えると、Edgeのトラブルは今後のWindows Updateでしか解決できないように思われます。

実際に、Windows Updateで不具合が解決することは多々あるので、待っていれば自動的に何かが変化して正常に戻ることもあると思います。

 

6.「お気に入り」とMicrosoft Edgeの「お気に入り」は、つながっていないと知ってますか?

今回、Microsoft Edgeのトラブルを経験して、重要なことに気づきました。

それは、アカウントフォルダにある「お気に入り」とMicrosoft Edgeの「お気に入り」はイコールではないということです。

アカウントフォルダ内の「お気に入り」は、「Internet Explorerのお気に入り」であって、「Edgeのお気に入り」ではないのです。

新しいパソコンに「お気に入り」を移動するような場合に、単に「お気に入り」のフォルダを移すだけでいいと考えている人が多いと思いますが、Microsoft Edgeのお気に入り自体は、全く異なる別の場所で管理されています。

つまり、パソコン間でEdgeのお気に入りを移動する場合は、Edgeのお気に入りからエクスポートとインポートを行う必要があるということです。

ただし、Edgeの場合は、同じマイクロソフトアカウントであれば、異なるパソコンどうしで、お気に入りを同期するようになっていますので、お気に入りをエクスポートやインポートする必要はないようになっています。

少なくとも、Windows10ではInternet Explorerが存在しているので、「お気に入り」フォルダの意味はわかるのですが、Windows11については、Internet Explorerが存在していないにも関わらず、「お気に入り」フォルダが存在しているという不思議な状態となっています。

本来は、Internet Explorerがない状態では、「お気に入り」フォルダ自体は必要ないと思われますが、過去の状態を引きずっているWindowsとしては、削除するのは簡単ではないようです。

ちなみに、最新のMicrosoft Edgeのお気に入りはどこにあるかというと

C:\Users\(アカウントフォルダ)\AppData\Local\Microsoft\Edge\User Data\Default

のフォルダ直下にある「Bookmarks」となっており、そのバックアップとして「Bookmarks.bak」や「Bookmarks.msbak」などのファイルが作られているようです。

これらのファイルを直接開くことはできませんので、Edgeのお気に入りからエクスポートすれば、htmlファイルとしてブラウザで開いてお気に入りの一覧を見ることができます。

1万円台で買えるスタディパソコンE10の紹介とセットアップ方法

最近、たまたまネットで見かけて購入したパソコンがあります。

それは、マウスコンピュータのE10シリーズのパソコンです。

スタディパソコン E10シリーズ

マウスコンピュータのサイトはこちら

このE10シリーズのパソコンの驚くべき特徴は「価格」です。
リンク先のページを見ていただくとわかるのですが、13,000円~20,000円の価格帯で購入できるパソコンなのです。(もちろん新品です)

マウスコンピュータとしては「タブレット」という分類で販売しているのですが、最初からキーボードは付属していますので、パソコンと呼んでも全く差し支えないと思います。

基本的な性能をご紹介すると、

OS:Windows 10 Pro 64bit(Windows 11にアップグレード可能)
CPU:Intel Celeron N4000
メモリ:4GB
ストレージ:64GB eMMC
ディスプレイ:10.1型タッチディスプレイ
Webカメラ:イン側とアウト側:200万画素
バッテリー動作時間:約12時間
本体重量:980g
キーボード重量:300g

というものです。

マイクロソフトのOfficeは付属していませんが、一部の機種ではKINGSOFTのWPS Officeが付属しているものもあります。

なお、マウスコンピュータのサイトで紹介されているE10シリーズを見たときに、ほとんどのスペックが同じなのに、価格が異なることに驚くと思います。

実は、微妙な違いですが、OSの違い、CPUの違い、BIOSパスワード機能などのセキュリティ機能の違い、KINGSOFT Officeの有無の違い、マインクラフトというアプリの有無の違いなどが、価格の違いとなっています。

最も基本的なものが、「E10-VL」という型名になると思います。

また、ディスプレイに対して使えるスタイラスペンという付属品があるのですが、これは現行のモデルには付属していないようです。ただし、一般で購入できるスタイラスペンが使えるので問題はないと思われます。

今回は、私が購入したスタディパソコンのE10について、その実力がどれほどかをご紹介したいと思います。

 

 

1.アマゾンで12,800円で購入したパソコン

驚くのは、アマゾンで新品のパソコンが12,800円で売られていたということです。
私が購入したのは、「MT-E10ZN」という型番のモデルですが、マウスコンピュータのサイトには、この型番は存在していないので、1つ前のモデルではないかと思われます。

なぜこのように安価なのかはわかりません。安かろう悪かろうと考えがちなのですが、実際の性能を確かめるために、購入することにしました。

もちろん、マウスコンピュータのサイトでもE10シリーズは13,000円で販売していますので、アマゾンが安いというわけではなく、このパソコン自体が元々低価格で売られているということです。

実際のスペックとしては、CPUがCeleron、メモリが4GB、ストレージが64GB、ディスプレイが10.1型というレベルですので、あくまでも低スペックなパソコンには違いありません。

ただ、パソコンが高くて買えないと思っている方や、お子様のためのパソコンだったり、高齢者のためのパソコンであったり、高いスペックは必要ないと考えている方であれば、これほどピッタリなパソコンはないと思います。

ひと昔前であれば、このスペックのパソコンは起動も遅くて、アプリの動きもままならないということがありましたが、今はハードディスク自体がSSDやメモリに変わることで、非常にスムーズに動くようになっています。

もしかしたら、お仕事をされている方で、テレワークで、会社にあるパソコンをリモートで使うという方にもいいかもしれません。microHDMIのアダプタ端子が付いていますので、外部の大型ディスプレイに接続して使用することも可能です。
10.1型のディスプレイの解像度は、「1,280×800」なのですが、外部ディスプレイに出力した時に解像度は、「3,840×2,160」となりますので、十分な解像度と言えると思います。

このパソコンの短所を言えば、ストレージが64GBしかないことと、マイクロソフトOfficeが付属していないことです。

ストレージについては、確かに少なすぎる点はありますが、側面にmicroSDを入れるためのスロットも付属していますので、多くの画像やファイルを使用する方は、SDカードを使用して不足を補うことができると思います。

ちなみに、Windows 10としてセットアップした直後のCドライブの空き容量は26.6GBとなっています。このため、Cドライブはアプリ専用として使用して、デスクトップ、ドキュメント、ピクチャー、ビデオなどのフォルダは、プロパティからフォルダの「場所」をSDカードに移動するような工夫をした方がいいと思われます。

私個人も、microSDカードの128GBを購入して、SDカードスロットに入れて使えるようにしました。

なお、注意してほしいのは、購入したmicroSDは、そのままでは「exFAT」というフォーマットになっている可能性があります。Windowsで使用する場合は、必ず「NTFS」というフォーマットに変更してから使用するようにしてください。

一方、マイクロソフトOfficeについては、現在「Microsoft 365 Personal」と呼ばれている1年契約タイプのOfficeを購入することで、導入することが可能です。
一般には、年間で13000円程度ですが、アマゾンでオンラインコード版を購入すれば、少しだけ安く購入できます。

ちなみに、Microsoft 365は、パソコンに設定したマイクロソフトアカウントと関連付ける必要がありますので、パソコンにマイクロソフトアカウントを設定した後に、アプリの登録とインストールを実行するようにしてください。

その他には、セキュリティソフトも必要になります。
最初に2カ月程度の試用版の「マカフィー」が付属しているのですが、期限が切れる前に、正式版のセキュリティソフトを導入する必要があります。

かといって、パソコンの価格以上のセキュリティソフトを買いたくないという気持ちもわかりますし、3台用とか5台用とかも必要ないという方であれば、ソースネクストの「Zeroウイルスセキュリティ」という手もあります。

いずれにしても、セキュリティソフトを入れないで使用するのは、非常に危険ですので、何らかのソフトを入れるようにしてください。

 

 

2.外観

まずは、全体の画像です。マグネット着脱式のキーボードを装着した状態です。

マウスコンピュータ E10シリーズ

次に裏と側面の画像です。
スタンドは、自由に角度が変えられるので、とても便利です。

裏には、純正の「スタイラスペン」を収納できる部分がありますが、スタイラスペンは付属していません。一般的なスタイラスペン(1000円~3000円)が使用できますので、必要な方は購入してください。

マウスコンピュータ E10シリーズ

左の側面の部分に、いろんな端子があります。

この端子は、通常はカバーに隠れた状態でなので、カバーを手で開けて使用することになります。

USB2.0端子(micro-B:台形のタイプ)、microHDMI端子、microSDカードスロット、USB3.0端子(Type-C)、ヘッドホン出力端子、ACアダプタの電源端子などがあります。

マウスコンピュータ E10シリーズ

今後は、左側面です。
ここには、電源ボタン、音量の調整ボタンが配置されています。

マウスコンピュータ E10シリーズ

最後に、本体とキーボードを切り離した状態です。
磁石で固定されているだけなので、簡単に切り離せます。

本体はタブレットとしても使用できますし、スタンドがあるので立てて使えるのがとても便利です。

 

 

3.Windows10、ローカルアカウントでセットアップ

この機種は、無料でWindows 11にアップグレードができるのですが、販売時点ではWindows 10としてセットアップするようになっています。

実際にセットアップして見てわかったのですが、セットアップの途中でWindows 11に直接アップグレードする案内も出てくるのですが、あえてWindows 10としてセットアップすることを選択しました。

また、現在のWindowsのパソコンの場合、セットアップ時にマイクロソフトアカウントでのログイン、もしくはマイクロソフトアカウントの新規登録が求められるのですが、こちらもすべて拒否して、ローカルアカウントとしてセットアップすることにしました。

ローカルアカウントとしてセットアップすると、
「自分のアカウントフォルダ名」=「ローカルアカウント名」となってくれます。

もちろん、ローカルアカウントからマイクロソフトアカウントに格上げしていくことも可能です。はじめてパソコンを購入して、マイクロソフトアカウントを持っていないという方は、ローカルアカウントから始めるのがいいと思います。

それでは、セットアップの手順を説明します。

パソコンを初めて起動した段階からセットアップは始まります。

E10シリーズ セットアップ

WiFiの接続は、家や会社にあるWiFiに接続してください。
WiFiを持っていない場合は、左下の「インターネットの接続していません」を選択して先に進みます。

E10シリーズ セットアップ

通常はマイクロソフトアカウントのメールを入力してセットアップするのですが、ここではあえて、「オフラインアカウント」→「制限付きエクスペリエンス」として、マイクロソフトアカウントを断っています。

次に、ローカルアカウントの名前の設定になりますが、ここで大切なことは日本語で設定してはいけないことです。ローカルアカウントは、そのままユーザーのフォルダ名として登録されますので、日本語のフォルダ名にするとトラブルの原因になることがあります。

また、いずれマイクロソフトアカウントに格上げするので、それほど凝った名前にする必要はありません。自分の姓か名を英語にしたもので大丈夫です。

なお、アカウント名の途中にスペースは使わないでください。

さらに、パスワードですが、ここでは何も設定しないで大丈夫です。
パスワードを設定しないことで、パソコンのログイン時にパスワードの入力が必要なくなります。なお、パスワードは後からでも設定可能です。

E10シリーズ セットアップ

プライバシー設定やエクスペリエンス設定は、何もしないで同意とスキップを押してください。

Cortanaというのは、AI機能を持つヘルプ機能だと思ってください。
Appleの「Siri」やGoogleの「Googleアシスタント」に相当するマイクロソフトのAIアプリだと思ってください。

次に、何故かWindows 11への誘いがあります。
ここでは、Windows 10のセットアップをしていますので、「アップグレードを拒否する」をクリックして、さらに「今は何もしない」をクリックします。

E10シリーズ セットアップ

しばらく、黒い画面で設定が進みますが、待っているとWindows 10のデスクトップが現れてくると思います。

以上が、Windows 10のローカルアカウントでのセットアップ方法となります。

 

 

4.マイクロソフトアカウントでセットアップした場合との違い

なお、ローカルアカウントではなく、マイクロソフトアカウントでセットアップを行った場合は、以下のような流れになります。

(1)マイクロソフトアカウントの設定

●すでに所有しているマイクロソフトアカウントを使用する場合

・マイクロソフトアカウントのメールアドレスの入力
・パスワードの入力
・本人確認(メールやSMSへのコード送信)

●新規にマイクロソフトアカウントを作成する場合

・アカウントの作成をクリック
・Outlook.jpのメールアドレスの作成
・パスワードの設定
・個人情報の入力など

上記が終了すると

(3)PINの作成

PINとは、パスワードの代わりに入力する数字のことです。
通常、4桁の数字で設定することが多いです。

(4)OneDriveの設定

OneDriveの設定については、特に注意が必要です。
OneDriveはマイクロソフトが提供しているクラウドストレージのことです。
初期状態で、5GBのサイズのストレージ領域が無料で提供されます。

そのままOneDriveを設定すると、デスクトップとドキュメントとピクチャーのフォルダがOneDriveにバックアップされる設定になりますので、バックアップしないように設定するようにします。

なぜバックアップしてはいけないかというと、デスクトップとドキュメントとピクチャーのフォルダにファイルが増えてきて、5GBを越えるようになると、OneDriveの容量の5GBを越えてしまって、OneDriveがエラー状態になるからです。このエラー状態を回避するためには、OneDriveを有料でサイズアップする必要があります。

M10シリーズ セットアップ

多くの方がセットアップで失敗するのが、OneDriveのバックアップ設定です。
一旦バックアップを設定した場合、設定を解除するためには、かなり苦労しますので注意してください。

 

 

5.まとめ

今回は、1万円台で購入できるマウスコンピュータのE10シリーズのパソコンを紹介しました。

このパソコンは、おそらく通常のノートパソコンとは異なり、タブレットパソコンという分類に入ると思われます。

他の製品で言えば、マイクロソフトの「Surface」や、アップルの「iPad Pro」というものもタブレットパソコンと言えます。

マウスコンピュータのE10シリーズは、学校などに導入するスタディパソコンとして開発されたものだと思われますが、子供だけでなく、大人や高齢者の方が使うパソコンとしても十分に使える性能があると思います。

興味のある方は、購入して使ってみてください。

さらに、詳しい設定の仕方や、使い方のノウハウなどについては、今後別の記事でご紹介することとします。

エクセルVBA 変数宣言

エクセルマクロ(その4)変数を宣言する

今回は、プログラムの部品として重要な「変数」について説明していきたいと思います。

「変数」というのはもちろん日本語なのですが、なんとなく意味がよくわからない日本語だと思います。

プログラムの中で、いろんな値や文字などを格納する箱みたいなものと考えていただくのがいいと思います。

VBAにおいては、プログラムの最初に、そのプログラムの中で使う変数を宣言することが一般的です。

前回までのブログ記事を紹介しておきます。必要があれば参照ください。
エクセルマクロ(その1)VBEの使い方を知ろう
エクセルマクロ(その2)セルの選択方法
エクセルマクロ(その3)ブックを切り替える

 

 

1.変数の宣言方法

まず、最初のプロシージャを見てください。

Sub テスト()
Dim x As Integer
x = 10
Debug.Print x  '10
End Sub

最初の「Dim x as Integer」という部分が変数宣言になります。
「Dim」+「変数名」+「as」+「変数のデータ型」という形です。

「Integer」という部分が、変数のデータ型を示しています。
ちなみに、「Integer」は整数(-32768~32767の範囲の整数)を示します。

変数は何でも入る箱なのですが、入れる前にどんな種類のものを入れるかを宣言しておかなければならないのです。

「x = 10」という部分は、「x」という変数に、「10」を代入するという意味です。ただし、この「10」がいつまでも「x」の中に入っているわけではありません。

Sub テスト()
Dim x As Integer
x = 10
x = 20
Debug.Print x  '20
End Sub

上記のプロシージャは、「x = 10」の下に「x = 20」が書かれています。
すでに「10」が入っているにも関わらず、後から「20」を代入すると、前に入っていた「10」は消えて、「20」になってしまうが変数なのです。

つまり、後から代入したものが強いというわけです。

次は、こんなプロシージャを見てください。

Sub テスト()
Dim x As Integer
x = x + 1
Debug.Print x  '1,1,1,1,....
End Sub

こんどは、「x = x + 1」という代入式になっています。
この場合は、今ある「x」に1を足したものを「x」に代入するという意味になります。

このプログラムを何度実行しても、Debug.Printで表示されるのは、「1」となります。これは、一旦プロシージャが終了すると、宣言された変数は消滅してしまうからです。

ところが、宣言されている変数の値をプロシージャの終了後も保持する方法があります。

Sub テスト()
Static x As Integer
x = x + 1
Debug.Print x  '1,2,3,4,5,....
End Sub

「Dim」ではなく、「Static」と書くことで、変数「x」の値は、プロシージャ終了後も保持されるので、Debug.Printで表示される値は、「1、2,3,4、5・・・」と増えていきます。

その他にも、変数の値を保持する方法としては以下のようなものがあります。

(宣言セクション)
Private x As Integer
--------------------------
Sub テスト()
x = x + 1
Debug.Print x  '1,2,3,4,5,....
End Sub

標準モジュールの先頭に、「Private x As Integer」と書いて、Subプロシージャの中には、変数宣言を書いていない場合です。

標準モジュールの先頭の場所を「宣言セクション」と言って、モジュール全体にかかるような内容を書きます。

宣言セクションに書いた変数宣言は、標準モジュール全体で使用される変数ということで、値が保持されています。

上記の場合、「Private」と書いているので、書かれている標準モジュール内のみで有効になっています。

一方、「Private」を「Public」に変えると、他の標準モジュールまで有効範囲が広がって変数が宣言されます。

(宣言セクション)
Public x As Integer
---------------------------
Sub テスト()
x = x + 1
Debug.Print x  '1,2,3,4,5,....
End Sub

このように、変数を宣言する方法によって、有効期間や有効範囲が変わるということを覚えておいてください。

ただし、変数を保持する形で宣言したとしても、エラーでストップした時や、エクセルブックを閉じてしまうとリセットされますので、注意してください。

 

 

2.変数の型の種類

ここで、変数のデータ型について説明したいと思います。

(1)数値型

整数だったら、IntegerかLong、小数だったらSingleかDouble、通貨だったらCurrencyと覚えておけば大丈夫です。ただし、代入した数値の精度は、データ型によって変わりますので、注意が必要です。

Sub 数値()
Dim s0 As Byte
Dim s1 As Integer
Dim s2 As Long
Dim s3 As Single
Dim s4 As Double
Dim s5 As Currency
s0 = 100.123456789
s1 = 100.123456789
s2 = 1000000.12345679
s3 = 12.3456789012345
s4 = 12.3456789012345
s5 = 12.3456789012345
Debug.Print s0  '100  ...整数になる
Debug.Print s1  '100  ...整数になる
Debug.Print s2  '1000000 ...整数になる
Debug.Print s3  '12.34568 ...小数点以下5桁になる
Debug.Print s4  '12.3456789012345 ...すべて正しく表示される
Debug.Print s5  '12.3457 ...小数点以下4桁になる
End Sub

 

データ型 初期値 データ範囲
Byte 0 0~255
(バイト型)
Integer 0 -32,768~32,767
(整数型)
Long 0 -2,147,483,648~2,147,483,647
(長整数値)
Single 0 4Byteで表せる浮動小数点値
(単精度浮動小数点数型)
Double 0 8Byteで表せる浮動小数点値
(倍精度浮動小数点数型)
Currency 0 8Byteで表せる固定小数点値
(通貨型)

(2)ブール型

ブール型は、真偽を判定するような場合に使われる型です。

Sub ブール型()
Dim flag As Boolean
Dim kazu As Integer
kazu = 15
If kazu > 10 Then
flag = True
End If
Debug.Print flag  'True
End Sub

If~End IFの構文の中で、flagにTrueを代入しています。Boolean型の変数には、TrueもしくはFalseしか代入できません。

データ型 初期値 データ範囲
Boolean false TrueまたはFalse

(3)日付型

日付は、エクセルの日付範囲と異なって、西暦100年から計算できます。
また、エクセルと同様に日付や時刻はシリアル値にも変換可能です。
日付型の変数に代入を見てみましょう

Sub 日付()
Dim hi As Date
Dim jikoku As Date
hi = "2022/7/20"
jikoku = "8:20:30"
Debug.Print hi  '2022/07/20
Debug.Print jikoku  '8:20:30
Debug.Print Now  '2022/07/20 19:44:49
Debug.Print Date  '2022/07/20
Debug.Print Time  '19:44:49
End Sub

上記の例では、「hi = “2022/7/20″」と書いていますが、「hi = #2022/7/20#」と書くことができます。そうすると、自動的に「hi = #7/20/2022#」と整形されます。
また、「jikoku = #8:20:30#」と書くと、「jikoku = #8:20:30 AM#」と整形されます。
必ず、日付や時刻を代入するときは、ダブルクォーテーションか、#で囲むようにしてください。

Now、Date、Timeは、自動的に現在の日付や時刻を導く関数です。

データ型 初期値 データ範囲
Date 1899/12/30 00:00:00 西暦100年1月1日~西暦9999年12月31日
時刻は0:00:00~23:59:59まで

(4)文字列型

文字列を変数に代入する場合は、必ずダブルクォーテーションで囲む必要があります。

Sub 文字列()
Dim kotoba As String
kotoba = "おはよう"
Debug.Print kotoba  'おはよう
End Sub

 

データ型 初期値 データ範囲
String vbNullString 文字列

(5)オブジェクト型

オブジェクト型は、数字や値を代入するような変数ではなく、オブジェクトを参照するタイプの変数です。

Sub オブジェクト型()
Dim place As Object
Range("A1:C3").Select
Set place = Selection
place.Interior.Color = RGB(255, 0, 0) '赤、xlnoneで透明
Set place = Nothing
End Sub

オブジェクト型の場合は、「Set 変数名 = オブジェクト」と書きます。
「Set 変数名 = Nothing」と書くことで、オブジェクトの参照を解除します。

データ型 初期値 データ範囲
Object Nothig 任意のオブジェクト参照
Range Nothig セルの範囲
Worksheet Nothig ワークシート
Workbook Nothig ワークブック

(6)バリアント型

バリアント型は、配列変数の宣言によく使われます。
すべての型のタイプに対応する万能型の変数です。

Sub バリアント型()
Dim x(5) As Variant
x(1) = 10  '数値型(整数)
x(2) = 10000000  '数値型(長整数)
x(3) = 10.1234567  '数値型(小数)
x(4) = "みかん"  '文字列型
x(5) = True  'boolean型
Debug.Print x(1)  '10
Debug.Print x(2)  '10000000
Debug.Print x(3)  '10.1234567
Debug.Print x(4)  'みかん
Debug.Print x(5)  'True
End Sub

 

データ型 初期値 データ範囲
Variant Empty あらゆる種類のデータ型を扱える

(7)ユーザー定義型

ユーザー定義型は、複数の種類のデータ型を1つの変数に収めるような場合に使用します。

(宣言セクション)
Type myClassMember
namae As String
birthday As Date
age As Integer
bloodtype As String
End Type
---------------------
Sub クラス()
Dim m(30) As myClassMember
m(1).namae = "鈴木"
m(1).birthday = "2004/12/1"
m(1).age = 18
m(1).bloodtype = "B"
Debug.Print m(1).namae
Debug.Print m(1).birthday
Debug.Print m(1).age
Debug.Print m(1).bloodtype
End Sub

Type [ユーザー定義変数]~End Typeの中で、個別の変数を定義して、Subプロシージャの中で、ユーザ定義変数を宣言した使い方の一例です。

 

 

3.定数の宣言方法

定数とは、変化しない値のことを言います。

もともとVBAが持っている定数のことを「組み込み定数」と言い、ユーザーが勝手に作成する定数のことを「ユーザー定義定数」と言います。

組み込み定数は、とても沢山あるのですが、とくに宣言する必要がなくて使うことができます。

一方、ユーザー定義定数は、きちんと宣言して使用する必要があります。

定数を定義する場合、2つの定義方法があります。それは、標準モジュールの宣言セクションで定義する場合と、プロシージャ内で宣言する場合の2つです。

(1)宣言セクションで定義する

(宣言セクション)
Const tax As Single = 0.1
------------------
Sub ユーザー定義定数1()
Dim kakaku As Long
Dim kosu As Integer
Dim goukei As Long
Dim goukei_zeikomi As Long
kakaku = 1000
kosu = 3
goukei = kakaku * kosu
goukei_zeikomi = goukei * (1 + tax)
Debug.Print goukei  '3000
Debug.Print goukei_zeikomi  '3300
End Sub

宣言セクションで宣言する場合、以下の2つの書き方があります。

Public Const tax As Single = 0.1
Private Const tax As Single = 0.1

[Public / Private] Const 変数名 As 型 = 値、という書き方になります。

Publicを付けて定数を宣言すると、他の標準モジュールでも有効な定数となります。一方、Privateを付けて定数を宣言すると、現在の標準モジュールのみで有効な定数となります。なお、単に「Const tax As Single = 0.1」として宣言すると「Public」が省略されたものとみなされます。

(2)プロシージャ内で宣言する

Sub ユーザー定義定数2()
Dim kakaku As Long
Dim kosu As Integer
Dim goukei As Long
Dim goukei_zeikomi As Long
Const tax As Single = 0.1
kakaku = 1000
kosu = 3
goukei = kakaku * kosu
goukei_zeikomi = goukei * (1 + tax)
Debug.Print goukei
Debug.Print goukei_zeikomi
End Sub

プロシージャ内で宣言する場合は、PublicやPrivateは付加せず、Constから記述するようにしてください。

Const 変数名 As 型 = 値

プロシージャ内で、定数を宣言した場合、定数の有効範囲は、そのプロシージャ内に限定されます。このような意味で、プロシージャ内での定数宣言の意味はそれほどないのですが、定数であることがすぐにわかるということで、用いられることが多いと思います。

 

 

4.列挙型の宣言方法

列挙型というのは、定数をまとめて宣言する方法です。ただし、列挙型で宣言できるのは、整数値のみです。

また、列挙型の宣言は標準モジュールの宣言セクションで行います。

(宣言セクション)
Private Enum youbi
日 = 1
月
火
水
木
金
土
End Enum
---------------------------
Sub 列挙型()
Debug.Print youbi.日  '1
Debug.Print youbi.月  '2
Debug.Print youbi.火  '3
Debug.Print youbi.水  '4
Debug.Print youbi.木  '5
Debug.Print youbi.金  '6
Debug.Print youbi.土  '7
End Sub

宣言セクションで列挙型を宣言する場合、PublicとPrivateのどちらかを先頭につけて宣言します。なお、省略した場合はPublicとなります。

[Private またはPublic] Enum 列挙型名
メンバー名 = [整数]
メンバー名
メンバー名
メンバー名
メンバー名
End Enum

Privateの有効範囲はそのモジュール内のみ、Publicの有効範囲は他のモジュールでも有効になります。

最初のメンバーの右に「= 1」などの整数値を書きます。
そうすると、次のメンバーは自動的に「2」、その次のメンバーは「3」というように連番が割り振られます。

ただし、すべてのメンバーに別々の数字を割り当てることも可能です。

(宣言セクション)
Private Enum Yakult
塩見 = 9
山崎 = 31
山田 = 1
村上 = 55
サンタナ = 25
中村 = 27
オスナ = 13
End Enum
----------------------------
Sub 列挙型2()
Debug.Print Yakult.塩見  '9
Debug.Print Yakult.山崎  '31
Debug.Print Yakult.山田  '1
Debug.Print Yakult.村上  '55
Debug.Print Yakult.サンタナ  '25
Debug.Print Yakult.中村  '27
Debug.Print Yakult.オスナ  '13
End Sub

一般的に、列挙型がよく使われるのは、列項目名をメンバーとして定義して、その項目が何列目にあたるかということを導くために用いることが多いと思います。

表のデータ全体を読み込んでマクロを組むような場合、どの項目が何番目の列に相当するかという点は、いちいち確認が必要になります。
また、列項目の並びが変更されたり、新しい列が追加された時でも、列挙型の宣言を更新するだけで、列が何番目にあるかを導けるので、プロシージャの中身を変更する必要がなくなります。

さらに、先頭の番号も変更できますので、読み込む表がA列から始まっていなくても定義することが可能となります。

 

 

5.配列変数の宣言方法

配列変数というのは、1つの変数の中に複数の値を持てるしくみを持っている変数のことです。

エクセル マクロ VBA 配列変数

上の図の卵のパックを考えてみてください。

1つの卵パックに10個の卵が入っています。
この卵パックに相当するものが配列変数となります。
この場合、5個の並びが2列あるということで、2次の配列変数と言えます。

これをマクロ風に書くとすれば、以下のようになります。

Dim 卵パック(5,2) As 卵
もしくは
Dim 卵パック(2,5) As 卵

次に、以下のようなエクセルの表を考えてみたいと思います。

A B C D
1 販売日 商品名 単価 販売個数
2 2022/7/25 りんご 250 20000
3 2022/7/26 みかん 100 50000

毎日の商品の売上の明細表みたいなものです。
3つの行(1~3)と4つの列(A~D)で構成されている表になります。

この表全体を1つの配列変数に入れるとしたら、どのような配列変数になるでしょうか?

項目名は日本語ですが、データには日付や文字列や数字があり、1つの型には収まりそうにありません。しかし、配列変数を用いると上記の表の値を1つの配列変数に含めることができます。

Sub 配列変数()
Dim uriage(3, 4) As Variant
Dim r As Integer
Dim c As Integer
For r = 1 To 3  '3行ある
  For c = 1 To 4  '4列ある
    uriage(r, c) = Cells(r, c).Value
    Debug.Print uriage(r, c)  '1つ1つのデータを表示
  Next c
Next r
End Sub

まず最初に配列変数の宣言ですが、
「uriage(3,4)」の意味を考えてみましょう。

配列変数を定義する場合は、変数名の後ろに括弧で、入れ物の数を書くようになっています。

例えば「x(3)」という配列は、3個の入れ物があるように思いますが、実際には4個の入れ物を持っています。ここが配列変数のややこしいところなのですが、以下のように考えてください。

「x(3)」・・・x(0), x(1), x(2), x(3)という4つの入れ物を持つことになります。

つまり、x(0)が先頭にあることで、全部で4つの入れ物になるということです。
この「x(3)」は1次の配列変数と呼びます。

しかし、実際のエクセルマクロで表のデータを配列変数に読み込む場合、0行や0列は存在しないので、uriage(3,4)のように3行分×4列分というように書いた方がイメージしやすいと思います。

つまり、uriage(3,4)は以下のようなマトリックスになります。

(0,0) (0,1) (0,2) (0,3) (0,4)
(1,0) (1,1) (1,2) (1,3) (1,4)
(2,0) (2,1) (2,2) (2,3 (2,4)
(3,0) (3,1) (3,2) (3,3) (3,4)

行や列に0を含んでいる部分は使わないで、黄色い部分を使ってエクセルの表のデータを読み込んでいると思ってください。

for ~ nextという構文は繰り返しを行う構文です。
エクセルの表を配列変数に読み込む場合は、行を1つ1つ変えながら、列のデータを1つ1つ読み込んでいくと手法をとります。

 

 

6.固定配列と動的配列の宣言方法

(1)固定配列

固定配列というのは、宣言する時点で配列に含まれる入れ物の個数がわかっている場合に使われます。

Dim uriage(3, 4) As Variant

固定配列の宣言方法は、もう1つあって、上記の表で0行や0列の部分の入れ物は使用しないというような場合は、以下のように書くこともできます。

Dim uriage(1 To 3, 1 To 4) As Variant

この場合、「1 To 3」とは、「1から始まって3で終わる」と考えてください。

(2)動的配列

動的配列というのは、最初に宣言する時点では、配列の入れ物の個数がわからないような場合に使われるものです。

プログラムの途中で入れ物の個数がわかった段階で定義したり、途中で入れ物の個数を変化させたり、一旦すべてクリアして、再定義したりできる配列変数です。

具体的には以下のような宣言になります。

Sub 動的配列()
Dim uriage As Variant
Dim rmax As Integer
rmax = Range("A100").End(xlUp).Row  '行の個数を求めている
ReDim uriage(rmax, 4)
Debug.Print rmax
End Sub

最初は、「Dim uriage As Variant」と宣言した時には、配列の個数は宣言していません。その後、行の個数を求めてから、「ReDim uriage(rmax, 4)」として再定義しています。

なお、配列宣言をVariant型で行う場合は、「Dim uriage As Variant」でも大丈夫ですが、配列宣言を固定の型で行う場合は「Dim uriage() As String」というように「()」を変数の後につけるようにしてください。

次に、動的配列の入れ物の個数を途中で変更する例になります。

Sub 動的配列2()
Dim namae() As String
ReDim namae(1 To 2)
namae(1) = "佐藤"
namae(2) = "鈴木"
ReDim Preserve namae(1 To 3)
namae(3) = "加藤"
Debug.Print namae(1)  '佐藤
Debug.Print namae(2)  '鈴木
Debug.Print namae(3)  '加藤
End Sub

ここでは、配列の再宣言(ReDim)を2回行っています。
2回目の宣言では、「ReDim Preserve」としていますが、この「Preserve」を入れることで、それまでの格納したデータを保持して再宣言するという意味になります。

ちなみに、「Preserve」を入れないで2回目を宣言した場合は、その前に格納したデータは消去されてなくなります。

次に、動的配列に直接データを入れることが出来る「Array関数」を見ておきましょう。

Sub 動的配列3()
Dim uriage As Variant
uriage = Array(#7/25/2022#, "りんご", 250, 20000)
Debug.Print uriage(0)  '2022/07/25
Debug.Print uriage(1)  'りんご
Debug.Print uriage(2)  '250
Debug.Print uriage(3)  '20000
End Sub

Array関数を使うことで、配列の入れ物の個数を定義することなしに、データを入れることができます。

 

 

7.配列変数のデータ削除方法

配列変数に格納されたデータを削除する場合は、「Erase」を使います。

Sub 配列の削除1()
Dim x(3) As String
x(0) = "りんご"
x(1) = "なし"
x(2) = "柿"
x(3) = "ぶどう"
Debug.Print x(0), x(1), x(2), x(3)  'りんご なし 柿 ぶどう
Erase x
Debug.Print x(0), x(1), x(2), x(3)  '空白を出力
End Sub

固定配列の場合は、「Erase」を行うと、配列の中のデータはクリアされますが、配列の入れ物はそのまま残ります。

一方、動的配列の場合は、「Erase」を行うと、配列の入れ物ごと消去されます。

Sub 配列の削除2()
Dim namae() As String
ReDim namae(1 To 2)
namae(1) = "佐藤"
namae(2) = "鈴木"
Erase namae
Debug.Print namae(1)  'エラーになってストップ
End Sub

動的配列を「Erase」した場合は、再度「ReDim」して配列の個数を宣言するようにしてください。

 

 

8.まとめ

今回は、変数の宣言方法について書いてみましたが、かなり長くなったような気がします。

エクセルマクロの場合、変数を定義しなくてもマクロが動く場合もありますが、途中でエラーが起きやすくなりますので、必ず変数は使用する前に宣言をするようにしてください。

なお、変数宣言を忘れないために、VBEの設定を変更しておく方法があります。

VBEの画面のメニューから「ツール」⇒「オプション」として、出てくる画面の「編集タブ」の中に「変数の宣言を強制する」というチェックボックスがありますので、ここにチェックを入れてOKボタンを押します。

この設定にしておいてから、標準モジュールを追加すると、その宣言セクションに「Option Explicit」という1文が表示されてきます。

この宣言をしておくことで、変数宣言をしないで変数を使用した時に、警告が出てくるようになります。

エクセルマクロでは、配列変数を使うと、マクロの速度も速くなって、効率的なプログラムを作ることができるようになります。

また、変数の型についても、しっかりと意識して宣言するようにしてください。特に数字の型については、正しく設定しないと異なる結果になるので注意してください。

次回のエクセルマクロは、繰り返しや条件分岐などを行う構文について説明する予定です。

エクセルマクロ(その3)ブックを切り替える

複数のエクセルファイルを切り替えながら作業するようなプログラムを作成する場合があります。

その場合、マクロプログラムが保存されたファイルと、通常のエクセルのファイルが画面上に同居する形になります。

マクロプログラムの実行は、必ずマクロを持っているファイルからスタートする必要があるのですが、他のエクセルファイルに移動して、そのファイル内で作業を行うこともできるのです。

通常、処理を行いたいエクセルファイルにマクロプログラムを組み込むことを考えると思いますが、処理を行うファイルが毎日データベースから出力されてくるファイルだったりした場合は、出力されたファイルで毎回マクロプログラムを組み込むことは効率的ではありません。

そこで、マクロを持つエクセルファイルは1つだけで、処理をするエクセルファイルを入れ替えながら、そのたびごとに処理を行うほうが効率的になります。

このようなプログラムを組む場合は、それぞれのエクセルファイルを切り替えて作業する必要があり、ブックの切替えが必要になります。

今回は、ブックの作成、ブックの読み込み、ブックの切替について書いてみたいと思います。

前回までのブログ記事を紹介しておきます。必要があれば参照してください。
エクセルマクロ(その1)VBEの使い方を知ろう
エクセルマクロ(その2)セルの選択方法

 

 

1.ブックのファイル名とパス

ブックのことを説明する前に、マクロプログラムが入ったエクセルのファイルの保存方法について書いておきたいと思います。

通常のエクセルファイルの拡張子は、「.xlsx」なのですが、マクロプログラムが入ったファイルは、この形式では保存することができません。

最初に、マクロプログラムが入った(もしくはこれからマクロを組む予定の)ファイルを保存する時は、ファイルの種類を「Excelマクロ有効ブック(*.xlsm)」として保存するようにしてください。

ここでは、あらかじめ「マクロファイル.xlsm」というファイル名でデスクトップ上に保存されていると考えてください。

標準モジュールを追加してから、以下のプログラムを書いてみましょう。

Sub マクロブックのファイル名()
Debug.Print ThisWorkbook.Name
End Sub

Debug.Printは、その結果をイミディエイトウィンドウに表示させるコマンドです。
イミディエイトウィンドウが表示されていない場合は、VBEのメニューの「表示」から「イミディエイトウィンドウ」をクリックしてください。

エクセル マクロ ブックの保存

上記のように、ファイル名が表示されてきます。

この場合、ThisWorkbookという部分は、マクロを実行したファイルのことを指してします。ThisWorkbook.Nameで、ファイル名となります。

これに対して、アクティブなブック(一番前面に出てきているワークブック)のファイル名を調べる場合は、以下のようになります。

Sub アクティブブックのファイル名()
Debug.Print ActiveWorkbook.Name
End Sub

ActiveWorkbookというのが、一番前面に表示されているワークブックのことになります。

次に、ワークブックのパスについて調べてみましょう。

パスというのは、ファイルが保存されている場所の階層構造を示すものです。

Sub マクロブックのフォルダパス()
Debug.Print ThisWorkbook.Path
End Sub

これを実行すると、以下のように表示されますが、これはあくまでも私のケースなので、マクロファイルが保存された場所によって変化します。

エクセル マクロ フォルダパス

このパスでわかるのは、マクロファイルがどのフォルダに保存されているかというところまでです。

完全なファイルのパスを表示する場合は、以下のように書いてください。

Sub マクロブックのファイルパス()
Debug.Print ThisWorkbook.Path & "\" & ThisWorkbook.Name
End Sub

上記のコードの中に「\」という記号がありますが、日本語モードのパソコンでは半角の¥マークに相当すると思ってください。ネット上では「¥」マークはバックスラッシュ「\」に変換されて表示されます。(内部的には同一のコードです)

エクセル マクロ ファイルパス

上記のように、ファイルまでのパスが表示されてくると思います。
ここで、パスの中にある「¥」は、フォルダの階層を区切る記号と考えてください。

ファイルを開いたり、ファイルを保存したりする場合は、「ファイルまでのパス」が必要になります。

 

 

2.新しいブックの作成と保存

新しいブックの作成は、以下のプログラムになります。

Sub ブックの作成()
Workbooks.Add
End Sub

こんな簡単なコマンドで、新しいブックが作成されます。

作成されたブックは、まだ保存されていないのでファイル名がついていない状態です。おそらくBook1やBook2のような名前になっているはずです。

そこで、この新しいファイルを保存してみたいと思います。
ファイル名は、「新しいファイル.xlsx」という名前にしてみましょう。

新しいブックが一番前面にある状態で以下のマクロプログラムを実行してみてください。

Sub ブックを名前をつけて保存()
ActiveWorkbook.SaveAs ThisWorkbook.Path & "\" & "新しいファイル.xlsx"
End Sub

このプログラムでは、マクロファイルと同じフォルダに、「新しいファイル.xlsx」という名前で保存されます。

ここで、ActiveWorkbookは一番前面にあるブックを指しています。
「SaveAs」は、「名前をつけて保存」という意味だと思ってください。

ちなみに、すでに保存されているファイルを再度保存する場合は、「Save」のみとなります。

Sub ブックの上書き保存()
ActiveWorkbook.Save
End Sub

 

 

3.エクセルファイルを開く

すでに存在しているエクセルファイルの開く場合についてですが、開く場合もそのファイルまでのファイルパスというものが必要になります。

まず、前の項目で作成した「新しいファイル.xlsx」を閉じてください。

今、このファイルは、デスクトップにありますので、ファイルまでのパスは、
「C:\Users\noko\Desktop\新しいファイル.xlsx」となります。
(実際にVBEに書く場合は、バックスラッシュは半角¥マークになります)
(ファイルパスの中の「noko」は私のパソコンのアカウント名です)

そこで、次にこのファイルを開くプログラムを書いてみましょう。

Sub ブックを開く()
Workbooks.Open "C:\Users\noko\Desktop\新しいファイル.xlsx"
End Sub

ブックを開くときは、「Workbooks.Open」の後に半角スペースを置いてから、開くファイルまでのパスを記述します。

これで、「新しいファイル.xlsx」が開いてアクティブになったと思います。

しかし、ここで問題なのは、開くファイルのパスをいちいち調べてマクロプログラムの中に記述するのは、かなり面倒だということです。

そこで、今度は誰でもブックを簡単に開ける方法をやってみましょう。

次のプログラムは、ブックを自分で選んで開く方法になります。

Sub ブックを自分で選択して開く()
Workbooks.Open Application.GetOpenFilename("Microsoft Excelブック,*.xls?")
End Sub

ここで、「Application.GetOpenFilename(“Microsoft Excelブック,*.xls?”)」の部分が、ファイルを開くダイアログを出してくれる部分で、さらに「(“Microsoft Excelブック,*.xls?”)」の部分は、ファイルの種類を限定しています。

最後の「.xls?」の「?」の部分は、何かの文字が1文字あるという意味です。

さらに、上記のプログラムでは、開くダイアログで「キャンセル」されるエラー処理が行われていないので、正しくは以下のように記述します。

Sub ブックを自分で選択して開く2()
Dim OpenFileName As String
OpenFileName = Application.GetOpenFilename("Microsoft Excelブック,*.xls?")
If OpenFileName <> "False" Then
    Workbooks.Open OpenFileName
Else
    MsgBox "キャンセルされました"
End If
End Sub

いきなり、難しいプログラムになったと思います。

「Dim OpenFileName As String」というのは、変数を宣言している部分です。
変数というのは、いろんなものを入れることができる箱と考えてください。

Dimは、宣言するときに先頭に入れる文字です。
OpenFileNameというのが、変数の名前です。(勝手に考えていい名前です)
As Stringというのは、変数の型を指定する方法です。
Stringというのは、「文字列」の型であることを示しています。

つまり、日本語でいうと、
「私はOpenFileNameという名前の変数を宣言します。その変数の型は文字列です」
という意味になります。

変数については、今後の記事で詳しく説明する予定です。

次の「OpenFileName =・・・・」の部分ですが、
「Application.GetOpenFilename(“Microsoft Excelブック,*.xls?”)」は、前にも出てきたエクセルファイルを開くダイアログのことです。

実際にこれが実行されて、なにがしかのファイルをクリックして「開く」ボタンを押したとしましょう。

そうすると、そのファイルまでのファイルパスが「OpenFileName」に代入されるということになるわけです。

ところが、「開く」ボタンを押さずに「キャンセル」ボタンが押されたとします。
そうすると、「OpenFileName」には「False」という文字が代入されるということになります。つまり、この部分がエラー処理しなければならない部分です。

If OpenFileName <> “False” Then
Workbooks.Open OpenFileName
Else
MsgBox “キャンセルされました”
End If

この部分は、「If ~Else~End If」という条件分けの構文になっています。
その条件は、「OpenFileName <> “False”」になります。

ここで、見慣れない「<>」という記号があると思いますが、これは「イコールではない」ということを表す記号です。
この条件の意味は、「OpenFileName」は「False」とイコールではない時という条件になります。つまり、ファイルが正常に選択されて開くボタンが押された時という意味になります。この条件に合致する場合は、「Workbooks.Open OpenFileName」が実行され、選択したファイルが開くことになります。

「If ~Else~End If」の構文はいずれ詳しく説明しますが、
ここでは、条件が正しくない場合は、「Else」以下の命令を実行します。

つまり、ファイルを開かないで、キャンセルされた場合は、「MsgBox “キャンセルされました”」が実行されるという意味になります。

少し難しかったと思いますが、今回はファイルを自分で選択して開けるマクロプログラムがあるんだと思っていただければ大丈夫です。

 

 

4.ブックを切り替える

エクセルファイルが2個も3個も起動している時に、ウィンドウを切り替える時は、どのようにしたらいいのでしょうか?

人間であれば、エクセルの画面を見ながら、「これだ!」って見つけて切り替えると思います。しかし、プログラム上で切り替えるためには、そういうわけにはいきません。

そこで、ファイルを何らかの方法であらかじめ区別しておく必要があります。

マクロファイルは、最初から立ち上がっていますが、別のファイルを開いた場合には、そのファイルが一番上に表示されてきます。

もう1度、マクロファイルのウィンドウを出すのは、どうすればいいのでしょうか?

この解決方法としては、プログラムを起動した直後に、マクロファイルにニックネームを付けておいたり、新しく開いたファイルは、開いた直後にニックネームを付けておいたり、新しく作成したファイルも、作成した直後にニックネームを付けておけば、そのニックネームで呼び出すことができるのです。

このニックネームのことを、オブジェクト変数といいます。
つまり、それぞれのファイルをオブジェクトとして、変数に当てはめておくということができます。

変数の宣言は、Dimから始まることを前に述べましたが、変数の型がその場合重要になります。

Sub ブックを切り替える()
Dim macrofile As Workbook
Dim newfile As Workbook
'マクロファイルに名前をつける
Set macrofile = ActiveWorkbook
'新しいファイルを作成
Workbooks.Add
ActiveWorkbook.SaveAs ThisWorkbook.Path & "\" & "NewBook.xlsx"
'新しいファイルに名前をつける
Set newfile = ActiveWorkbook
'マクロファイルに切り替える
macrofile.Activate
Range("A1").Value = "これはマクロブックです"
'新しいファイルに切り替える
newfile.Activate
Range("A1").Value = "これは新しいブックです"
'マクロファイルに切り替える
macrofile.Activate
MsgBox "処理が終わりました"
End Sub

ここで、重要なことは、変数の宣言です。
Dim macrofile As Workbook
Dim newfile As Workbook
というように「As Workbook」としてWorkbookオブジェクトの変数であることを宣言します。
書き方はいろいろあって、「As Object」や「As Variant」でもオブジェクト変数は宣言できるのですが、より具体的な方が分かりやすいので「As Workbook」としています。

このオブジェクト変数に、実際のワークブックを代入するときは、
Set macrofile = ActiveWorkbook
Set newfile = ActiveWorkbook
のように、「Set 変数名 = ActiveWorkbook」とします。

もちろん、ActiveWorkbookというのは、一番前面に表示されたワークブックのことなので、目的とするワークブックがアクティブになっている時点で、オブジェクト変数に代入する必要があります。

通常の変数であれば、「変数名 = 文字や数字」となりますが、
オブジェクト変数の場合は、必ず「Set 変数名 = オブジェクト」となりますので、覚えておいてください。

そして、ブックを切り替える時は、
macrofile.Activate
newfile.Activate
のように、「オブジェクト変数.Activate」とするだけでウィンドウが切り替わります。この場合、「.Activate」としているところが重要です。
前の記事で、Activateは1つのセルだけしか選択できないということを書いたと思いますが、今回の場合も、ウィンドウは1つしかアクティブにならないので、Activateを用います。

ちゃんとブックを切り替えて作業していることがわかるように、
それぞれのブックのA1セルに文字を代入しています。

セルに文字を代入する場合は、
Range(“A1”).Value = “これはマクロブックです”
というように、「セル位置.Value = “文字”」とします。

最後に処理が終わったことがわかるように、
MsgBox “処理が終わりました”
としていますが、一般のマクロプログラムを作成した場合にも、マクロの終了がわかるように、最後にこのメッセージを入れることがよくあります。

それと、コードの中にシングルクォーテーションを最初に入れたコメントが書いていると思います。

エクセルマクロの場合、半角のシングルクォーテーションを先頭に入れると、プログラムには含まれないコメントを入れることができます。

 

 

5.まとめ

今回は、エクセルのブックの新規作成方法や保存方法、既存のブックの開き方、そして、開かれた複数のブックの切替方法について説明しました。

エクセルブックは、ファイル名だけでは開いたり、保存したりすることができません。「ファイルパス」を正しく設定したり、取得したりすることが重要になります。

また、エクセルファイルを画面上で切り替える場合には、オブジェクト変数を定義して、「オブジェクト変数.Activate」で簡単に切り替えられることを覚えておいてください。

今回少しですが、変数が出てきていますので、次回は変数について説明したいと思います。

エクセルマクロ(その2)セルの選択方法

エクセルVBAは、単なるプログラムではなくて、エクセルと密接に関連したプログラムになっています。

その中でも最もよく使われるのが「セルの選択」というコマンドです。

今回は、この「セルの選択」に焦点を当てて、マクロプログラムを説明していきたいと思います。

なお、この記事は前回の記事の続きとして書いていますので、前回の記事を読みたい場合は、以下のリンクをクリックしてください。

★前回の記事
エクセルマクロ(その1)VBEの使い方を知ろう

 

1.マクロのエラー表示について

一応、前回の補足として、マクロのエラーのことを書いておきます。

記述したプログラムにエラーがある場合は、マクロを実行した時にエラー画面が出てくることがあります。

エクセル マクロ エラー画面

このようなエラー画面がでた場合、「終了」ボタンを押すと、マクロを強制的に終了することができます。

しかし、「終了」ボタンを押した場合、どこでエラーが発生したかを認識することができません。そこで、通常は「デバッグ」ボタンを押すようにしてください。

そうすると、エラーが起きている行が黄色く塗りつぶされて、エラーを見つけることができるようになります。

エクセル マクロ エラー解除

上記のように黄色に塗りつぶされた行にエラーの原因があります。

この場合、エラーを修正する場合は、上記の図の赤い丸で囲まれた四角のボタンを押して、デバッグモードをリセットしてください。それから、エラーのある行を修正するようにしてください。

 

 

2.セルを選択する

エクセルでは、セルを選択してから、何かを実行するという手順になります。ですので、最初の覚えていただくのは、セルの選択の方法です。

標準モジュールを挿入してから、以下のプログラムを書いてみましょう。

Sub セルの選択1()
Range("C3").Select
End Sub

プログラムのコマンドは、小文字で書いても自動で文字の先頭が大文字になりますが、この場合の、C3のCは、小文字で書いても大文字にはなりません。セル番地を書く時は、大文字で書くようにしてください。

ここで出てくるRangeというものは、「セル範囲」という意味だと思ってください。
このプログラムを実行すると、C3のセルが選択されます。

次に、複数のセル範囲を選択してみましょう。

Sub セルの選択2()
Range("C3:E8").Select
End Sub

このプログラムを実行すると、C3からE8までのセルの範囲が選択状態となります。
つまり、Rangeを用いると、複数のセル範囲を一度に選択できるようになります。

このRangeとは別に、セルを選択する方法にはもう1つあります。

Sub セルの選択3()
Cells(2,3).Select
End Sub

このCellsを用いると1つのセルを数字を使って選択することが可能になります。
Cells([行の値],[列の値])
というように書きます。

Cells(2,3)のセルは、2行目の3列目のセルとなって、C2のセルが選択されます。

このCellsを使うと、数字でセルを指定できるので、プログラムの応用性が上がって、複雑なプログラムを書くことができるようになります。

ただし、CellsはRangeと違って、複数のセルの範囲を選択することができません。
1つのセルだけの選択の時のみと考えてください。

一方、複数のセル範囲を選択するときに、RangeとCellsを一緒に使って選択する方法があります。

Sub セルの選択4()
Range(Cells(2, 3), Cells(4, 6)).Select
End Sub

この方法では、Rangeの中にCellsを2つ入れることで、セルの範囲を指定しています。応用的な使い方ですが、数字を使ってセル範囲を選択できる方法として覚えておいてください。

それと、注意点ですが、Selectというコマンドは、「選択する」という意味なんですが、基本的にマウスでクリックするとか、マウスで範囲を選択するという意味だと解釈してください。

たとえば、別のシートの範囲を選択するためには、シートを切り替えてから、セルを選択するという順番になります。いきなり別のシートの範囲をマウスで選択することができないように、RangeやCellsを使ってSelectする場合は今表示されているシートの中でしか有効になりません。

 

 

3.シートを移動する

それでは、シートを切り替える時はどうすればいいのでしょうか。
実は、これもSelectを使うことで切替が可能になります。

新しいシートを何個か作成してから、「Sheet1」を表示させた状態で、以下のマクロを実行してみましょう。

Sub シートの切替1()
Worksheets("Sheet2").Select
end Sub

このマクロを実行すると、シートは「Sheet2」に切り替わります。

この「Worksheets」というのは、Worksheetクラスというのがあって、たくさんあるシートのことを指していると考えてください。その中の「Sheet2」を指定して選択しますよという意味なんです。

この「Worksheets」は、単に「Sheets」と書いても大丈夫です。

Sub シートの切替1()
Sheets("Sheet2").Select
End Sub

「Sheet2」という名前を「データ」という名前のシート名に変えた場合は、以下のようになります。

Sub シートの切替1()
Sheets("データ").Select
End Sub

さらに、シートを数字で指定する方法もあります。

Sub シートの切替2()
Sheets(2).select
End Sub

「Sheet(2)」というのは、左から数えて2番目のシートという意味です。

この場合、注意していただきたいのは、シートを非表示にしても、非表示にしたシートも含んで何番目のシートかを指定する必要があるということです。

なので、非表示にしたシートがあるような場合は、シート名で指定する方が安全だと思います。

 

 

4.シートを追加して名前を変更する

シートを追加して、シート名をマクロで変更することができます。

例えば、新しいシートを追加して、そのシートの名前を「データ」と設定するというマクロを考えてみましょう。

まずは、シートの追加ですが、とても簡単です。

Sub シートの追加1()
Sheets.Add
End Sub

もちろん、Worksheets.addでも大丈夫です。

この場合、現在選択されているシートの1つ前に新しいシートが生まれます。

次に、追加したシートのシート名をつけてみましょう。

Sub シートの追加2()
ActiveSheet.Name = "データ"
End Sub

ここで出てくる「ActiveSheet」というのは、現在表示されているシートという意味です。シートを追加すると、追加されたシートがその時点で表示されているので、その表示されているシートの名前が、「ActiveSheet.Name」となります。

ActiveSheet.Name = “データ”

この行にあるイコールという意味は、「等しい」という意味ではなくて、「代入する」という意味だと考えてください。右側のものを左側に代入するという意味です。

そこで、上記のマクロを合体させると、

Sub シートの追加3()
Sheets.Add
ActiveSheet.Name = "データ"
End Sub

となります。

ここで注意していただきたいのは、同じシート名を複数のシートにつけることができないということです。もし、マクロ上で別のシートに同一名を指定した場合は、エラーとなります。

また、シート名には以下のような制約があります。

・全角、半角文字に関わらず「最大31文字」
・シート名を空欄(0文字)で設定することはできない
・「:」、「\」、「/」、「?」、「*」、「[」、「]」は使用できません。
・シングルクォーテーション、円マークも使用できません。

次に、少し難しくなるのですが、シートの位置を指定してシートを追加する方法についても書いておきます。

Sub シートの追加4()
Sheets.Add before:=Sheets(1)
End Sub

これは、シートの先頭にシートを追加する方法です。

Sheets.Addの後ろに半角スペースを入れてから、「before:=Sheets(1)」と書きます。
ここで出てくる「:=」という表記は、エクセルマクロでよく出てくるのですが、条件を書くときに使われる記号だと考えてください。Sheet(1)は先頭のシートを指しますので、そのシートの前にという意味になります。

逆に、シートの最後にシートを追加する方法も覚えておきましょう。

Sub シートの追加5()
Sheets.Add after:=Sheets(Sheets.Count)
End Sub

ここで出てくるSheets.Countはよく使われるフレーズです。Sheets.Countで現在存在しているすべてのシートの数を意味しています。

Sheets(Sheets.count)で、最後のシートを意味しており、その後ろということで、「after:=」という書き方になります。

 

 

5.セル範囲を相対的に移動させる

RangeやCellsを使うと、絶対的な位置でセルを選択することができますが、現在選択されているセルを基準として、相対的にセルを移動する方法についても書いておきます。

以下のプロシージャを書いてみてください。

Sub セルの相対的移動()
Range("C3").Select
ActiveCell.Offset(2, 1).Activate
End Sub

このマクロは、まずC3のセルを選択して、それから、現在選択されているセル(ActiveCell)を基準として行方向で2つ、列方向で1つ移動したセルを選択するというプログラムになっています。

ここで、「ActiveCell」は現在選択されているセルを表しています。
「ActiveCell.Offset」というのは、「ActiveCellを基準として」という意味です。
Offset([行方向での移動個数],[列方向での移動個数])と考えてください。

なお、ActiveCellで指定できるのは、1つのセルだけです。
Activateも1つのセルに対して使われるコマンドです。

以下にOffsetの具体例を書いておきます。

Offset(0,0)・・・移動しない
Offset(1,0)・・・下に1つ移動
Offset(0,1)・・・右に1つ移動
Offset(1,1)・・・下に1つ、右に1つ移動
Offset(-1,0)・・・上に1つ移動
Offset(0,-0)・・・左に1つ移動
Offset(-1,-1)・・・上に1つ、左に1つ移動

イメージは、上の図のようになります。

さらに、選択された複数のセルの範囲を相対的に移動することもできます。

Sub セル範囲の相対的移動()
Range("C3:E5").Select
Selection.Offset(3, 3).Select
end sub

最初に、C3からE5のセル範囲を選択しています。
そのセル範囲のことは、次の行では「Selection」として扱います。
Selectionというのは、現在選択されている範囲という意味です。

このSelectionを基準として、Offsetで行で3つ、列で3つ移動を行っています。

エクセル マクロ Selection

このように、Offsetは、セル範囲に対しても移動を行うことができます。

ここで、出てきた「Activate」と「Select」の違いについてですが、Activateという場合は、1つのセルのみの選択になります。一方、「Select」は、1つ以上のセルを選択する場合に使用すると考えてください。

 

 

6.セルの選択範囲を変更する

現在選択されているセルを基準として、セルの選択範囲を変更するコマンドがあります。

Sub セルの選択範囲の変更()
Range("C3:D4").Select
Selection.Resize(3, 4).Select
End Sub

この場合のSelectionはC3~D4のセル範囲になります。
ここで使われている「Resize」はセル範囲を変更するという意味で、
Resize([行の個数],[列の個数])
という範囲に変更するという意味になります。

ここでの注意点は、
[行の個数]は1以上、[列の個数]も1以上の値を取るということです。
また、セル範囲の基準となるのは、一番左上のセルとなります。

イメージは以下のようになります。

エクセル マクロ Selection

この場合、resizeに指定する値は、行と列のセルの数であるということを覚えておいてください。

次に、上記の範囲が選択された状態で、ActiveCellの位置を変更するようにしてみましょう。

Sub アクティブセルの移動()
Range("C3:D4").Select
Selection.Resize(3, 4).Select
ActiveCell.Offset(2, 3).Activate
End Sub

このプログラムのポイントは、選択範囲をそのままにして、ActiveCellの位置だけを変更しているという点です。

Activateを使うことで、選択範囲の中でActiveCellの位置を変更することができます。

エクセル マクロ ActiveCell

実際には、このようなプログラムは稀だと思うのですが、セルを選択する場合のSelectとActivateの違いがよくわかる例として覚えていただくのがいいと思います。

 

 

7.シート全体のセルを選択する

シート全体の値を消去したい場合などに、シート全体を選択する必要があります。

この場合は、以下のようなマクロプログラムになります。

Sub シート全体を選択()
Cells.Select
End Sub

Cellsだけでシート全部のセルなので、覚えやすいと思います。

 

 

8.行や列を選択する

行全体、列全体を選択する場合について、いくつかの方法があります。

(1)3行目を選択する

Sub 行を選択1()
Rows(3).Select
End Sub

Rows(3)で3行目という意味です。

(2)3行目から5行目までを選択する

Sub 行を選択2()
Range("3:5").Select
End Sub

Rangeを使って、行3~5を選択しています。

(3)3行目から5行目までを選択する(その2)

Sub 行を選択3()
Range(Rows(3), Rows(5)).Select
End Sub

Rangeの中に、Rowsで指定して選択するやり方です。

(4)C列を選択する

Sub 列を選択1()
Range("C:C").Select
End Sub

C列だけを選択する場合は、Range(“C:C”)とします。

(5)C列を選択する(その2)

Sub 列を選択2()
Columns(3).Select
End Sub

Columnsを使うと、数字で列を選択できます。Columns(3)はC列になります。

(6)C列からE列までを選択する

Sub 列を選択3()
Range("C:E").Select
End Sub

Rangeで列番号の範囲を指定する方法です。

(7)C列からE列までを選択する(その2)

Sub 列を選択4()
Range(Columns(3), Columns(5)).Select
End Sub

Rangeの中にColumnsを使って指定する方法です。

(8)セルを基準にして2行目を選択する

Sub セル基準選択1()
Range("B2").EntireRow.Select
End Sub

1つのセルが属している行を指定する方法です。

1つのセルだけでなく、Rangeで複数のセルの範囲を指定することもできます。
Range(“B2:B4”).EntireRow.Select
と書くと2~4行をまとめて選択できます。

(9)セルを基準にして2列目を選択する

Sub セル基準選択2()
Range("B2").EntireColumn.Select
End Sub

1つのセルが属している列を指定する方法です。

1つのセルだけでなく、Rangeで複数のセルの範囲を指定することもできます。
Range(“B2:D2”).EntireColumn.Select
と書くとB~D列をまとめて選択できます。

 

 

9.まとめ

今回は、セルを様々な方法で選択する方法について書いてみました。
SelectやActivateの違いについても理解しておいてください。

エクセルの場合、分類すると
・ブック
・シート
・行
・列
・セル
という構造になっています。

これらの階層構造をどのように指定して選択していくかということが、プログラムを作る上で大切になります。

セルの指定は、RangeとCellsの2つの方法があります。
行の場合は、RangeとRows、列の場合は、RangeとColumnsとなります。
シートは、Worksheets(シート名)、もしくはWorksheets(番号)で指定します。
「Worksheets」は、「Sheets」と書いても同じことになります。

次回以降で、ブックについても選択の方法を学んでいきます。

エクセルマクロ(その1)VBEの使い方を知ろう

エクセルのマクロを勉強して使えるようになりたいという方は、まずVBE(Visual Basic Editor)の使い方をマスターする必要があります。

実のところ、世の中には多くのプログラミング言語はあるのですが、プログラムを組むための環境を整えるということと、エディターの機能を知っておくということがまず始めに大切なことです。

かといって全部を最初から知っておくのは無理なので、最低限の使い方を覚えながら、少しづつプログラムの作成方法を覚えていくのがいいと思います。

 

1.エクセルに「開発」タブを表示させよう

エクセルの初期状態では、VBAのための「開発」タブが表示されていません。
なので、まず最初は「開発」タブを表示させてみましょう。

「ファイル」タブをクリック、左のメニューから「オプション」をクリック、オプションの画面が出てきたら、左のメニューから「リボンのユーザー設定」をクリックします。

画面の右側に「メインタブ」が出てきていると思いますので、その中にある「開発」にチェックを入れて、右下の「OK」ボタンをクリックします。

これで、エクセルの画面の上部にあるタブの並びの中に「開発」という文字が現れてくると思います。

それでは、「開発」タブをクリックしてください。

エクセルマクロ 開発タブ

表示されるリボンの左端に、上記のようなものが表示されていると思います。
まず、ここに表示されているボタンの意味について説明しておきますね。

(1)Visual Basic
Visual Basic Editerを起動させるボタンです。このボタンをクリックすると、マクロプログラムを作成するためのウィンドウが新たに表示されます。

(2)マクロ
このボタンは、すでに作成されているマクロプログラムの一覧を表示させるものです。ここから、マクロプログラムの編集や実行を行うこともできます。

(3)マクロの記録
このボタンは、マクロを簡単に作ってみたい人のために用意されたもので、このボタンを押した後に、マクロ名を確認してOKすると、自分が行ったエクセルの操作をそのままマクロプログラムとして記述してくれるというありがたいものです。
操作が始まると、「マクロの記録」は「記録終了」というボタンになりますので、操作終了後は、必ず「記録終了」をクリックして終わらせる必要があります。

(4)相対参照で記録
エクセルには、絶対参照と相対参照という言葉がありますが、通常「マクロの記録」は絶対参照という形で行われます。これは選択したセルの位置が絶対参照的なものでプログラムが組まれるという意味です。
これに対して、「相対参照で記録」のボタンをONにしてから「マクロの記録」ボタンを押すと、最初に選択されているセルを基準にして、相対的なセルの位置を認識してプログラムが組まれることになります。
例えば、選択したセルの背景色を変更するマクロプログラムを作成したとすれば、絶対参照の場合は、常に同じセルの背景色を変更するだけですが、相対参照のプログラムでは、最初に不特定のセルをクリックしてマクロを実行させれば、その選ばれたセルの背景の色が変化するようになります。

(5)マクロのセキュリティ
このボタンを押すと、トラストセンターという画面が現れます。一番上に「マクロの設定」という項目があり、その下に4つのラジオボタンの選択があります。
初期状態では、「警告して、VBAマクロを無効にする」という所が選択されていると思います。この意味は、マクロを持っているエクセルファイル(*.xlsm)を開いた時に、エクセルの画面の上に「セキュリティの警告 マクロが無効にされました」という黄色い帯が出て、「コンテンツの有効化」ボタンをクリックすることで、マクロが実行可能になるという意味です。この設定はそのままにして変更しないでください。

 

2.VBE(Visual Basic Editor)を起動してみよう

それでは、開発タブの中の「Visual Basic」のボタンをクリックしてください。
以下のような画面が現れます。

エクセル VBEの画面

この画面は、エクセルの画面とは別のウィンドウとして現れてきますので、エクセルのウィンドウとVBEのウィンドウを左右に並べてディスプレイに表示するのがいいと思います。

ちなみに、この画面の出し方はもう1つあって、「Alt」+「F11」のキーで表示させることもできます。

 

3.標準モジュールを新しく作成しよう

マクロプログラムを書くための1つのメモ帳みたいなものが「標準モジュール」と呼ばれているものです。これは、何個でも作成することができます。

とりあえず、1つ作成してみましょう。

エクセル VBA 標準モジュール

メニューの「挿入」から「標準モジュール」をクリックします。

上記のように真っ白い画面が右に出てきたと思います。ここにプログラムを書くことになります。

左側の上の欄に「プロジェクト」という部分があって、その中に「標準モジュール」という項目が出来て、さらにその配下に「Module1」というものが見えると思います。これが今作成した標準モジュールの名前になります。

実はこの「Module1」という名前は変更することもできます。左側の下の欄に「プロパティ」というところがありますが、その中に(オブジェクト名)という項目があります。その部分に書かれた「Module1」という部分の文字を変更することで、名前を変更できます。

それでは、試しに名前を「メイン」という名前に変更してみましょう。
「Module1」の文字を「メイン」に変更してEnterキーを押してみましょう。

エクセル VBA 標準モジュール

「Module1」が「メイン」に変更されました。

 

4.「プロシージャ」を新しく作成してみよう

プロシージャというのは、プログラムの1つの単位だと考えてください。
エクセルマクロには、プロシージャの種類が3つあります。

・Subプロシージャ
・Propertyプロシージャ
・Functionプロシージャ

PropertyプロシージャとFunctionプロシージャは、最初は難しいので覚えなくても大丈夫です。Subプロシージャをまず覚えてください。

Subプロシージャには、以下の2つがあります。

・Public Subプロシージャ
・Private Subプロシージャ

1つの小さなプログラムの場合は、それほど区別する必要はないのですが、複数のプロシージャが連携して、大きなプログラムを組むような場合に、大切になります。

Private Subプロシージャは、1つの標準モジュール内の範囲でのみ、相手のプロシージャと関連することができるものです。

これに対して、Public Subプロシージャは、複数の標準モジュールをまたいで、相手のプロシージャと関連することができます。

多くの場合、使われるのは、Public Subプロシージャとなります。

それでは、メニューの「挿入」から「プロシージャ」をクリックしてください。

エクセル VBA プロシージャ

そうすると、以下の画面が現れます。

エクセル VBA プロシージャ

名前という欄に「テスト」と入力してください。
プロシージャの名前には以下の条件があります。

(1)文字(英語か日本語)で始まっている
※数字から始まってはいけません。
(2)スペースや記号は使用できません。
※「_」(文字の途中でアンダーバーは使用できます)
※「.」については一部例外はあります。
(3)80文字以下で設定する必要があります。
(4)プログラムで使用するようなコマンドの文字は使えません。

種類は、「Subプロシージャ」、適用範囲は「Publicプロシージャ」という状態のまま、OKボタンを押してください。

Public Sub テスト()

End Sub

上記のように表示されたと思います。

実際には、プロシージャの挿入はメニューの挿入から行うことは稀で、直接モジュールの中に以下のように書いてEnterすることが一般的です。

Sub テスト() 

この場合、Publicは書いていませんが、単にSubと書いた場合は、自動的にPublicだと解釈されています。この場合、Subの後ろは半角スペース、最後の括弧は半角で名前のすぐ後にくっつけて書きます。

Sub テスト()

End Sub

Enterキーを押すと、自動的にEnd Subが表示されます。

もう1つ、その下にSubプロシージャを作成してみると、プロシージャの間に線が引かれていて、区別されることが分かります。

エクセル VBA プロシージャ

なお、同じ名前のプロシージャは設定してはいけませんので、必ず別名で作成してください。プロシージャ名は、いつでも変更可能です。なるべくわかりやすい名前で設定する方がいいでしょう。

マクロのプログラムは、Sub~End Subの間に記述することになります。

 

5.一番簡単なプログラムを作ってみよう

(1)メッセージボックスを出してみよう

以下のプログラムを記述してみましょう。

Sub テスト()
msgbox "こんにちは!"
End Sub

「msgbox」と小文字で書いても、自動で「MsgBox」に変換されます。

このプログラムを実行する場合は、MsgBoxと書かれている行内にまずカーソルを置いてください。

それから、以下のツールバーの三角ボタンをクリックします。

エクセル VBA プログラムの実行

エクセル VBA プログラムの実行

「こんにちは!」というメッセージボックスが現れますので、OKボタンを押してください。

この場合、OKボタンを押さないとプログラムは終了しないので、注意してください。

(2)Debug.Printをやってみよう

Debug.Printというのは、プログラムの途中で何かを表示させたいという時に使うコマンドです。

このコマンドを使う場合には、「イミディエイトウィンドウ」というものを画面上にあらかじめ表示させておく必要があります。

エクセル VBA イミディエイトウィンドウ

メニューの「表示」から「イミディエイトウィンドウ」をクリックしてください。

画面の下に「イミディエイト」という欄が現れます。

エクセル VBA イミディエイトウィンドウ

この「イミディエイトウィンドウ」は、Debug.Printのコマンドの表示先になるものです。その他の用途もあるのですが、今後紹介します。

それでは、以下のプログラムを記述してみてください。

Sub テスト2()
debug.print "こんにちは"
End Sub

「debug.print」と記述しても、自動で「Debug.Print」と変換されますので、コマンドは小文字で書いても大丈夫です。

それでは、カーソルをdebug.printの行のどこかに置いてから、実行の三角ボタンを押してみてください。

エクセル VBA イミディエイトウィンドウ

上記の図のように、イミディエイトの欄に「こんにちは」と表示されたら成功です。

 

6.まとめ

今回は、エクセルマクロの初心者の方に、マクロを作成するためのVBE(Visual Basic Editor)の簡単な使い方を見ていただきました。

エクセルマクロは、プログラムを初めて作成する人にも理解しやすいと思いますので、少しづつ作り方を覚えていくのがいいと思います。

最終的にはエクセルで複雑な操作を行いたいと思っている方も多いと思いますが、プログラムの上達は急がば回れで、基礎をきちんと理解することが最も大切です。

今後も、マクロの初心者向けに、わかりやすい記事を書いていきたいと思います。

adwcleaner

パソコン上達のために知っておきたいサイトとアプリ

インターネット上には、無料で使えるツールもあれば、無料でダウンロードできるアプリもたくさんあります。

ただし、インターネット上には危険なウイルスがたくさんいますので、危ないサイトに行ったり、危ないアプリをダウンロードしてはいけません。

特に、同じアプリであっても、ダウンロードするサイトによって安全な場合もあれば、危険な場合もあります。

そこで、安全につかえる有用なツールやアプリとその取得方法についてご紹介したいと思います。

パソコンの上達のために、これらのツールやアプリを是非ご活用ください。

パソコン上達のために知っておきたいツールとアプリ

 

1.AdwCleaner(知らないうちに組み込まれてしまったアドウェアなどを検出し、削除できるアプリ)

このアプリは、大元の会社のサイトからもダウンロードできるのですが、その場合は、パソコンにインストールしないと使うことができません。

そこで、お薦めはインストールしないでも使えるアプリです。Vectorのサイトからダウンロードするアプリは、インストールしないで単独でも使用できるアプリです。

Vectorのサイト
https://www.vector.co.jp/soft/winnt/util/se506143.html

こちらからダウンロードすると、バージョンは「7.2.1」となりますが、アプリを起動してから、アップデートすることで、バージョンは「8.3.2」となります。

このアプリの優れている点は、ウイルス対策ソフトでは駆除できないようなアドウェアを見つけて削除することです。たとえば、ウイルスに感染しているパソコンでは、ネットもブロックされるし、新しい駆除ツールのインストールもブロックされることがあります。

このアプリはUSBからも起動ができますので、そのようなウイルスを駆除するのに非常に有用なツールとなります。また、多くの方は自分のパソコンは、ウイルス対策ソフトを入れているので、守られていると思っていますが、実際にはウイルスまでいかないようなアドウェアに感染しているケースもあります。

このアプリでチェックすることで、隠れているアドウェアを検出して削除することができます。

 

2.PDFをあらゆる形式に変換することができるサイト

PDFを別形式に変換するためには、有料のAdobe Acrobat Proを購入する必要があるというのが世間の常識なのですが、驚くことにPDFを他の形式に無料で変換してくれるサイトがあります。

I Live PDF
https://www.ilovepdf.com/ja

PDF結合、PDF分割、PDF圧縮、PDFからWord、PDFからPowerpoint、PDFからExcel、WordからPDF、PoerpointからPDF、ExcelからPDF、PDFを編集、PDF-JPEG変換、JPEG-PDF変換、PDFに署名、透かし、PDFの回転、HTMLからPDF、PDFロック解除、PDFを保護、PDFを編成、PDFからPDF/A、PDF修復、ページ番号、などの機能を使えるサイトです。

一部の機能は有料ですが、無料で使える機能も多くあり、とても有用です。
このサイトは、2010年にバルセロナで誕生したようですが、日本語にも対応しており、使い方もとても簡単です。

なお、このサイトにアップロードしたファイルは、すべて暗号化されており、処理後2時間以内にサーバーから削除されていますので、セキュリティ上も安全です。

 

3.フリーカレンダー(無料書き込みWEBカレンダー)

このフリーカレンダーというサイトは、かなり昔からあるサイトなのですが、無料で使えるWebカレンダーとして、ホームページやブログに埋め込んで使えるという応用ができるところが特徴です。

フリーカレンダーは無料書き込みWEBカレンダー
https://freecalend.com/

登録はIDとパスワードだけというシンプルな登録です。(IDはメールアドレスでなくても大丈夫です)

スマホでもパソコンでも簡単に編集と公開ができます。驚くのはガラケーでも使えます。(今の時代は必要ないかもしれませんけど)

一番便利な利用法は、営業日や営業時間などをホームページ上で簡単にお知らせできることだと思います。

 

4.無料で学べるオンライン講座「gacco」

こちらは、ツールやアプリではありませんが、学生や社会人にとって必要な知識を学ぶことができるサイトです。

gacco
https://gacco.org/

もちろん、全部無料で学ぶことができるビデオ講座となっています。

ログインは、メールアドレスとパスワードだけですが、dアカウント、Google、Facebook、Twitter、ビジネスdアカウントのアカウントでもログインできます。

講座には受講期限があり、テストもあったりしますので、まさに学校みたいな感覚で学ぶことができます。

ちなみに、このサイトを運営しているのはdocomoです。

 

5.CSVエディタ「Cassava Editor」

こちらは、データベースからダウンロードされたCSVなどを編集するためのエディターです。

Cassava Editor(窓の杜)
https://forest.watch.impress.co.jp/library/software/cassavaedit/

こちらのアプリは、かなり昔からあるのですが、なぜこのアプリが重要かというと、CSVファイルの根本的な問題が解決できるからです。

データベースなどから書き出されたCSVは、書き出す設定によってエクセルなどで開くと、正しいデータとして表示されないことが多々あります。
CSVというファイルは、データをカンマで区切っているだけなのですが、データの中にカンマが存在していたり、数字の先頭に0があったような場合は、エクセルでは正常に開くことができません。

また、サーバーからのデータ書き出しの場合、特殊な日本語コードや、特殊な改行コードなどが、CSVファイルに書き出されることもあり、それらをエクセルで修正することができません。

このため、CSVファイルをまずCassava Editorに読み込んで、正しい形式のCSVファイルにして書き出すということで、正しいデータを持つCSVファイルに変換して保存することができます。

このアプリは、インストール不要のアプリですので、会社などでアプリのインストールが禁止されているような状況でも、直接起動して使えるので、データ処理をしている方には、とても有用なアプリです。

 

6.VideoPad 動画編集ソフト

ビデオ編集ソフトは、いろんな種類があり、Youtubeなどの動画編集としてもいろんなソフトが使われています。

Macに付属しているiMovieや、WondershareのFilmora、CyberlinkのPowerDirector、AdobeのPremiere Pro、Web上で作成可能なinvideoなどが有名です。

また、スマホやタブレットなどの動画編集アプリもたくさんあると思います。

今回ご紹介する「VideoPad 動画編集ソフト」は、アメリカのNCHソフトウェアという会社の製品です。

このソフトは無料版と有料版があります。起動の初期画面で「VideoPadを非営利目的で使用していることを証明します」という部分をクリックすることで無料で使用できます。

また、無料の場合は、ビデオのエクスポートは「wmv形式」のみとなります。
その他の機能制限も若干ありますが、通常の使用レベルでは、問題ないと思います。

VideoPad動画編集ソフト
https://www.nchsoftware.com/videopad/jp/index.html

使い勝手はかなりいいソフトです。他の動画編集ソフトを少しでも使ったことがあれば、問題なく使えると思います。

一般に、無料で使える期間が少なかったり、書き出す動画にクレジットの表記があったりする無料版は多いのですが、このソフトに限っては、無料版でも永久に使えるので、とてもありがたいソフトです。

wmv形式以外の書き出し形式がいい場合は、有料版を購入してください。
もしくは、ウェブ上のツールでwmvからmp4などの形式に変換できるサイトもありますので、そちらをご利用ください。

 

7.PhotoScape X(画像加工ソフト)

写真の編集ソフトとしては、Adobe Photoshopが王道ですが、最近はPhotoshopレベルに近い無料のアプリもだんだんと増えてきています。

その中で、最近出てきた優秀なソフトが「PhotoScape X」です。もともとあった「PhotoScape」がバージョンアップしたものなのですが、その画面や機能は大きく変わって、かなり使いやすいものになっています。

PhotoScape、PhotoScape Xは、韓国の会社が開発したソフトですが、多くの言語版があり、多くの国で使われています。今回のPhotoScape XはWindows 10及び11とMacOS 10.12(sierra)以降に対応したバージョンです。

PhotoScape X
ダウンロード方法は、Windows版の場合は、「Windowsストア」で「PhotoScape X」を検索してインストールしてください。Mac版の場合は、Macの「App Store」からダウンロード、インストールできます。

以前のPhotoScapeが、編集状態を保存することができなかったのに対して、編集状態をプロジェクトファイルとして保存できるようになりました。また、新しい機能として、「カットアウト」という項目があり、これは背景を透明化することで、画像を切り取る機能です。PNGファイルとして保存することで、背景が透明な画像を作ることができます。

 

8.ID Manager(パスワード管理ソフト)

ネットのサービスの「IDやパスワード」、様々な契約情報などをあなたはどのように管理しているでしょうか?

多くの方は、紙のメモ帳や、スマホのメモ帳などに記録していると思いますが、それでも多くの情報を管理するのは大変です。

Windowsのパソコンであれば、ID Managerという昔から使われているソフトがあって、とても便利なソフトですので、お薦めいたします。

ID Manager(洗練されたIDとパスワードの統合管理環境)
https://www.vector.co.jp/soft/win95/util/se178553.html

このソフトのすごいのは、Windows95からWindows11までをサポートしていることです。また、登録したデータのバックアップや、インポートなども出来るので、パソコンを買い替えた時でも簡単にデータを移し替えることができます。

また、ソフトの起動時にユーザ名とパスワードを設定できるので、セキュリティ上も安全です。

最近は、ブラウザにIDとパスワードを保存できるようになっていますが、一部のウイルスでは、これらのブラウザ内の情報を取得できるものも現れており、ブラウザ内への保存は安全とは言えなくなってきていますので、このソフトを使ってきちんとIDとパスワードを管理することをお薦めします。

なお、1点だけ補足があります。このソフトから保存を選択した時に、保存のエラーが出ることがあります。これは保存されていないわけではなくて、バックアップの保存が出来ていないという意味になります。メニューの「設定」から「設定」をクリックして、「データ保存設定」というタブに行って、バックアップ設定の項目の2つのチェックをOFFにしてOKボタンを押してください。この設定の変更で、以降はエラーは出なくなります。

 

9.Notion(メモや仕事を管理するソフト)

Notionは、クラウドとローカルで使用できるメモツールです。同じようなツールとしてはEvernoteが有名ですが、Notionの特徴としては、個人の利用が無料で、複数のデバイスでも無料で使用できることです。

NotionはアメリカのNotion Labsという会社が開発したツールですが、様々な書式が最初から用意されていて、簡単にメモ管理やタスク管理ができるようになっています。

もちろん、Windows、Mac、iOS、Androidなどで使えるようになっています。ローカルにダウンロードして使うこともできるのですが、お薦めはGoogle Chromeのブラウザ上でクラウドとして使用することです。

実は、ローカルのアプリの場合はメニューなどがすべて英語表記となってしまうので、英語が不得手な人には少し難しいかなと思います。その点Google Chrome上のクラウドで使用すると、翻訳機能で英語を日本語にして使用することができるので、使いやすいと思います。英語を翻訳する場合は、左側のメニューのカラムの何もない場所で右クリックすると、「日本語に翻訳」が出てきます。

Notion
https://www.notion.so/ja-jp

Notionのページに行って、「Notionを無料で使ってみる」ボタンから登録してください。Google IDやApple IDを使ってログインすることをお薦めします。

Notionの最大の特徴は、自分で作成したページをウェブ上に公開できることです。もちろん、URLは複雑ですので、URLを教えた人だけが見れると考えてください。

また、ページには画像のカバーを付けることができます。また、様々な書式ブロックが用意されており、複雑なレイアウトを簡単に作成することができます。さらに外部のサービスとの連携も行うことができ、ウェブ上で使うことを前提に考えられているシステムとなっています。

どのようにメモを管理してまとめていくかは、あなた次第ですが、一律の使い方ではなくて、個性的な使い方もできるので、そこはアイデア次第です。

 

Microsoft Officeの32bit版と64bit版は共存できない

Microsoft Officeには、以下のようなバージョンがあります。

Office 365(サブスクリプション購入の時代)[32bit/64bit]
Office 2021(Windows 11の時代)[32bit/64bit]
Office 2019(Windows 10の時代)[32bit/64bit]
Office 2016(Windows 10の時代)[32bit/64bit]
Office 2013(Windows 8.1の時代)[32bit/64bit]
Office 2010(Windows 7の時代)[32bit/64bit]
Office 2007(Windows Vistaの時代)[32bit]
Office 2003(Windows XPの時代)[32bit]
Office 2000(Windows Me、Windows 2000の時代)[32bit]
Office 98(Windows 98の時代)[32bit]
Office 95(Windows 95の時代)[32bit]

Officeがはじめて64bit版を出したのはOffice2010からとなります。
また、Windows OSの64bit版が出たのは、Windows Vistaからです。

Officeがインターネットからダウンロードできるようになり、マイクロソフトアカウントと関連付けられるようになったのは、Office 2013からです。

Office 2010までは、パッケージ版としてCDもしくはDVDの形式で提供されていました。

 

1.Windows 11からOfficeのデフォルトが64bit版になる

Windows 10のコンピュータまでは、意識することなくOfficeも32bit版を使っていた人がほとんどでした。

この理由としては、メモリがある程度以上の容量がないと、64bit版が快適に動かないことや、64bit版で使うと不具合が生じることがあるためでした。

しかし、Windows 11からは、インストールされるOfficeのほとんどが64bit版に変更されることになりました。

自分のOfficeが32bit版なのか、64bit版なのかを調べる方法としては、WordやExcelを起動して、「ファイル」から「アカウント」を開き、「バージョン情報」のボタンをクリックすると、画面が出てきますので、その一番上にOfficeのバージョンと、ビット数が書かれています。

 

2.Officeのバージョンの混在は、可能なのか?

基本的に、Officeのバージョンを複数個インストールした経験がある方は少ないと思いますが、ディスクで供給されていた時代のOfficeの場合は、一応共存が可能でした。

具体的には、Office 2003、2007、2010といったOfficeは1つのパソコンに異なるバージョンをインストールすることができました。ただし、Outlookだけは、古いバージョンは削除され、新しいバージョンのみに統一されました。

一方、インターネットからダウンロードできるようになったOfficeの場合は、前のバージョンが自動的に消去されるようになりました。

現在では、バージョンアップという考え方はなくなり、パソコン購入時にOfficeがプレインストールされているタイプは、Office 2016、2019、2021というネーミングになり、永久版のOfficeということで、バージョンアップはありません。

ところが、Office2016、2019、2021というOfficeが入っているパソコンにOffice 365をインストールすると、永久版のOfficeは削除されて、Office 365のみになります。

もちろん、マイクロソフトアカウントの管理画面のサブスクリプションに登録されている、Office 2016、2019、2021は消えていませんので、Office 365を削除すれば、入れなおすことも可能です。

一般に、Officeのバージョンの共存はトラブルの元になるので、あまりお薦めできません。

 

3.Windows 10とWindows 11で使用できるOfficeは?

 

Windows10 Windows11
Office 365
Office 2019
Office 2016
Office 2013
Office 365
Office 2021
Office 2019
Office 2016

Windows 11ではOffice 2013が推奨されなくなっています。

個人的に、Office2013をWindows 11にインストールしてみましたが、特に問題なくインストールできました。おそらくサポート対象外という意味だと思われます。

 

4.Windows 11にOffice 2010を入れてみた!?

たぶん、誰もやらないとは思いましたが、Windows 11に32bit版のOffice 2010 Professionalをインストールしてみました。結果としては全く問題なくインストールできました。

実際にOffice 2010のワードやエクセルを使ってみましたが、問題なく動作しました。

さらに、ここにOffice 365をかぶせてインストールしてみたらどうなるのかと思い、Office 365をインストールしてみました。

結果としては、Office 2010は削除されないで、Office 365と共存した状態でインストールされました。

ちなみに、Office 2010が32bit版の場合、かさねてインストールするOffice 365は自動的に32bit版が既定になります。

これは、ビット数が異なるOfficeが共存できないためです。

両方のバージョンのWordやExcelも独立して使用することができましたが、やはりファイルの関連付けがおかしくなったので、共存はお薦めできないと思います。

ちなみに、気を付けていただきたいのは、Office 2010 Professionalをインストールすると、Accessのデータベースエンジンである、Jet Database Engineがインストールされるのですが、このデータベースエンジンは、Office 2010 Professionalをアンインストールしても、削除されません。

このように、Office 2010のプログラムのかけらが残っている場合、他のバージョンのOfficeに悪影響を与えることがあります。

 

5.Officeのすべてのプログラムを綺麗に削除するプログラム

異なるバージョンのOfficeをインストールして、Officeの調子が悪くなった場合に、パソコンから、綺麗にすべてのOfficeのプログラムを削除してくれるツールがあります。

それが、「Office のアンインストール サポート ツール」です。

こちらのページに行きます。

このページの下の方にある「オプション2- アンインストールサポートツールを使用してOfficeを完全にアンインストールする」をクリックします。

そして「ダウンロード」というボタンを押すと、ツールのプログラムがダウンロードできます。

ダウンロードしたプログラムをパソコンにインストールして使用してください。

Officeのバージョンを指定して削除を実行します。削除にはかなり長い時間待つこともありますので、気長に待ってください。

 

6.32bit版を削除した後、64bit版のインストールを行います

Officeで大切なことは、32bit版と64bit版は共存することができないということです。

32bit版のOfficeのバージョンが存在している状態では、64bit版のインストールは拒否されます。

もし、32bit版のOfficeを削除しているのに、64bit版のインストールが拒否されるような場合は、上記のアンインストールサポートツールを使用して、完全にOfficeを削除するようにしてください。

Windows11とWindows10、どちらが使いやすいのか?

今回、Windows11のパソコンを用意して、Windows10との違いを調査しましたので、ご報告させていただきます。

 

1.Windows11で失われたもの

2021年の年末から、Windows10をお使いの方で、Windows11へのアップグレードが可能なスペックのPCには、Windows Updateにおいて、Windows11のアップグレードのためのバナーが表示されるようになりました。

Windows11へアップグレードが可能なPCは、ハードウェア、特にCPUとマザーボードのスペックが必要になるのですが、実際にはここ3年以内に購入されたPCであっても対象にならないPCもあるようです。

個人的には、Windows11にアップグレードするよりも、Windows10のまま使用していく方が幸せだと思っています。

もちろん、今後新しく購入されるような場合は、Windows11のPCを購入されても全く問題はありません。

それでは、Windows10からWindows11にアップグレードして困ることは何か?という点についてですが、

1.Internet Explorer(IE)がありません。

2.Windows Liveメールが使用できなくなります。

3.Windows ムービーメーカーを使用できなくなります。

4.Microsoftオフィスの所有者アカウントと使用者アカウントが異なる場合、再度認証が必要になることがあります。

5.エクスプローラーのデザインが大幅に変化したために、戸惑うことが多くなります。

6.設定画面の構成が大きく変化したために、設定に戸惑うことが多くなります。

7.スタートメニューのプログラムリストの構成が変化し、特にWindows関連のツールが探しにくい状態となっています。

以上のような点が、Windows11で困る点です。

すでにInternet Explorerを使っている人は少なくなっていると思います。
Windows10では、まだ存在していたInternet Explorerですが、Windows11では、完全に消滅しています。(Egeの中にIEモードが残されていますが)

また、Windows10でWindows Liveメールを使い続けていた人は、Windows11にアップグレードした場合、別のメールソフトに変更する必要があります。Windows Liveメール自体が動作しなくなっているので、過去のメールを見ることができなくなってしまいます。

もう1つはWindows ムービーメーカーが使えなくなることです。もともとWindows7から組み込まれた無料のビデオ編集ソフトなのですが、無料ということで愛着があって使っていた方もいるかと思いますが、こちらも完全に使えなくなります。

これらの傾向から、Windows7までのマイクロソフトの過去の製品について、Windows11では継承することをやめたのではないかと考えられます。

一方、Office2013、Office2016、Office2019、Office365については、すべてマイクロソフトアカウントに紐づけられる形でインストールされています。このマイクロソフトアカウントを認識されていない方や、パスワードを忘れている方、他人のアカウントでOfficeをインストールされた方などは、Windows11にアップグレードした段階で、アカウントの認証や確認が行われる可能性がありますので、インストールした時点のアカウントを認識しておく必要があります。

Windows11で、一番大きな変化を感じるのがエクスプローラーの画面からリボンがなくなったことです。コピーや貼り付けや削除などのボタンが小さなアイコンに変わり、表示モードなどもドロップダウンで選択するようになっています。Windows10のエクスプローラのリボンにあった「ファイル名拡張子」や「隠しファイル」などの項目は、オプションの画面を出して設定するようになっており、Windows7の時代に戻った形で、わかりにくくなっています。

もう1つ大きな表示上の変化は、設定画面の変化です。Windows10の設定画面をわかりやすくするために、左メニュー化して、それぞれの階層を降りて行きながら設定できるように変更されています。ただし、Windows10の設定と比べるとかなり画面が変わっているので、設定の場所を見つけるのが大変になります。

スタートメニューについても大きな変更がなされています。タスクバーが中央揃えになったことは、たいした変化ではないのですが、スタートメニューはタイル表示からアイコン表示に変化しています。「すべてのアプリ」のボタンをクリックすると、アプリの一覧が出てくるのですが、Windows10がスタートボタンをクリックするだけで、すべてのアプリの一覧が見れるのに対して、ワンクリック操作が増えているのは面倒な感じがします。

さらに驚くのが、Windows10のプログラムの一覧にあった「Windowsアクセサリ」「Windows簡単操作」「Windows管理ツール」「Windowsシステムツール」などのフォルダが、Windows11では見当たらなくなっており、Windowsの機能ツールを見つけることが困難になっています。

 

2.Windows11の存在意義は何か?

Windows11の存在意義は、過去のWindowsからの決別ではないかと思います。

特に、Windows7の時代のWindowsと決別した感じがします。

Windows8.1で採用したタブレットモードは、Windows10には一部継承されましたが、Windows11では、完全に廃止されています。

そして、過去のWindows系のアプリは、廃止されたり、インストールできなかったりすることが多いようです。

もともとのWindows11の売りは、AmazonのAndroidアプリがPC上で動くということらしいのですが、残念ながらその対応はされていません。

現状では、Windows11がWindows10に比べて性能が各段に進歩したという印象は受けません。むしろ、退化した部分もあって、不便になった感じもします。

既に、現在では多くのメーカーや販売店はWindows10からWindows11のPCへの入れ替えが進んでいますし、これから購入される方は、Windows11を買うことは自然な流れだと思います。

しかし、現時点でWindows10を使っている方が、Windows11にアップグレードしてもそれほどのメリットを感じることはないと思われます。

そういう意味で、現時点ではWindows10を継続して使われることをお薦めします。

 

3.フリーソフトも動作します。

私が調べた限りでは、これまで動いていたフリーソフト(32ビット、64ビット)については、Windows11にほぼインストール可能で、動作することを確認いたしました。

フリーソフトの作成者側も、最近は32ビットと64ビットの2つのバージョンを用意していることもあって、対応が可能になってきているようです。

当初は、32ビットのソフトが動作するのかという不安もあったのですが、特に支障なく動くようです。

 

4.Office365の64ビットが快適に動きます

Windows10の場合、Office365の64ビット版をインストールしたときに、一部で不具合があったため、あえて32ビット版をインストールしていました。

今回、Windows11になって、Office365の64ビット版が問題なく動くようになっている印象を強く受けました。

おそらく、Windows11は、64ビットで動くソフトに最適化されているのではないかと思われます。

 

5.過去のWindowsとの互換性を重視する場合は、Windows10を継続しよう

会社固有の業務ソフトなど、一般的なソフトではないタイプのものは、Windows11で動かなくなる可能性があります。

また、古いプリンタや複合機などについても、互換性がないこともあります。

基本的には、過去の資産を継続的に使いたい場合は、Windows10を継続して使用したほうが安全だと思います。

一方で、過去の資産はほとんどなく、ネット中心でPCを使用しているような会社であれば、Windows11に変更しても大きな影響はないと思われます。

ただ、いずれにしても、パソコンは変化していきますので、古いソフトウェアから新しいソフトウェアへと入れ替えを行っていくことは必須です。

Windows10のサポートは2025年まで続きますが、それまでに新しいソフトウェアへの変更を速やかに行うことが望ましいと思われます。