2020年7月5日日曜日

無線LANの罠

6月にWindows大型アップデートが来たせいか、印刷ができなくなってしまいました。

今まで、2階のデスクトップPCから1階の無線LAN接続プリンタに接続して印刷することができていたのに。具体的には以下の図のようになっていました。
これ見ると、たしかにアクセスポイントである子ルーターは別ワークグループになっていて、プリンターに接続できなさそうに見えるんですが…以前はできていました。

とりあえず、5月には印刷できたんですよね…理由はよくわからないですが。なので、6月のアプデの影響ではないかと…とは言え、現状接続できないことに変わりはないので、接続を見直します。ひとまずワークグループから。
そもそも、なぜPCをモデムに直接接続してたのかよくわからんので、親ルーターからすべて分配するように変更。これでデスクトップからはプリンタが見えるようになったので、ドライバを設定し直して完了。で、親から分配されたネットワークなので子ルーターのアクセスポイントからもプリンターが見えたらいいな…と思っていたんですがそれはどうやら甘かった。


今回わかったことは、有線でも無線でも同じアクセスポイントに接続していなければネットワークプリンタを操作することはできない、ということでした。ググってもこの事例を紹介しているサイトはなかったので、図にしてみました。まあネットワークの基本を考えれば、こういう構成にすると思うんですけど、先日交代した先代の親ルーターがわりと不具合多いモデルだったため、色々やってるうちにBefore構成に落ち着いていたんだと思います。Win10も2018年までは「ホームネットワーク」機能があって、それでつなげていた可能性もありますし。

とにかく誰かの役に立てば幸い!

2020年6月25日木曜日

Windowsの罠・リターンズ2020

久しぶりですが、今回はかなり久しぶりかつ過去最高に腹が立ったWindowsのクソ仕様について書きます。

まあWindowsは特に10になってから基本的にクソ仕様の宝庫であり、設定項目に書いてある説明文が何を言いたいのかさっぱり分からないのですが、今回はそれに留まらず言うなればほとんど詐欺にあったようなものです。

具体的には『フォト』アプリなんですが、キャプチャしたスクショ動画(ゲーム関係アプリで簡単に撮れるようになっているのでその辺は便利なんですけど)を編集できない!と言うお悩みです。

トリミングやクロップをして保存しようとすると「OneDriveに接続されていません」とのメッセージ。あたくしこれまでGoogleの奴隷で、最近音楽ではアップルの軍門に下った負け犬なんですけど、現用してるWindows端末1個なのでMicrosoftにまで魂を売りたくないんですが…しかしローカルファイルしか扱わないのにOneDriveとの接続を切る方法が見当たらないため、仕方なくサインインします。その際グーグルに預けているパスワードを引き出すにもMicrosoftのアカウントサービス名が分かんねえんですよ。なんだよWindowsLiveって。て言うかドメインにMicrosoftもWindowsも入ってねえじゃねーかよこんなの何度やったって忘れるわボケカス。

そんなこんなでサインインして編集を続けるんですが、トリミングだけ何故か成功しました。やった!これで勝つる!と思ったのも束の間、今度はそのトリミング後の動画ファイルが読み込めない。再生は出来るんだけど、編集しようとすると「編集する際に必要なプロパティを読み込むことができませんでした」とか言われます。出たよ「It is That」構文。なんの事を指しているかさっぱりです。原文は英語なんだからわざわざ日本的表現しなくてもいいのに…

それはそれとして、これまでLinuxやホームページ関係を弄ってきたカンで何となくファイルパーミッションのことかな?と思ったのでファイルのプロパティを見るが、そんなのフルアクセスに決まってるじゃあないですか。だってそもそもユーザーとして管理者権限持ってますから自分。保存時に読み取り専用にされるとか言う事も、アドウェア込みライセンスを買わせようとする悪徳体験版ソフトなんかにはありますが、天下のMicrosoftがそんな事するはずないよなあ?

で何度も何度もググってやっとたどり着いた情報が「フォルダのパーミッションが不整合(意訳)」と言うもの。


つまりどういうことだってばよ、それは「編集対象フォルダ外のファイルは編集できません」ということで、これだけ読むとトートロジーなんですけど「設定」の項にある対象フォルダにキャプチャした動画のフォルダが含まれていなかった!と言うことだったのです!そんなこと書いてなきゃ分かるわけねーだろコンチクショーめ!!最初から「この対象フォルダに登録してない場所にあるファイルは編集できません」て書いとけよPL法って知ってる?????(※国内法です


という事で、動画関連は全てWindowsの『ビデオ』フォルダ以下のディレクトリに突っ込み、『ビデオ』ごと対象フォルダに指定しておきましょう。これで再帰的に対象になります。あー疲れた。ここまでめちゃくちゃ早口で記載して来たこと、お分かり頂けただろうか。

しかしまだ道半ば、画面上一部だけ黒塗りを入れたい範囲があるんですけど、スタンプみたいな機能があるのかどうなのかいまいち分からんのです。どうやらペンツールがあるので、ペンタブでぐりぐり塗りつぶしてしまえばいいんですけど、タイムライン上どう指定するかがよくわからない…

もう少し頑張ってみるよ。やれるだけ。なんだかんだ言ってもつまりは君の事…ンガググッ

2019年11月5日火曜日

可動範囲への印刷設定アドバンス

このエントリの続きです。

設定したい範囲のデータ途中に空白行があるときは、COUNT/COUNTAだとどうしても実際の最終行とズレが出てしまい特に行数が多いときに必要な範囲に設定されないケースが出てきます。これを防ぐには配列数式を使うしかないようです。もしくはVBAで設定するしかないんですが、ワークシート関数だけで完結したいじゃないですかやっぱりぃぃ。

と言うわけでその最終行の出し方。

MAX(INDEX((LEN(列)>0)*ROW(列),0))

なんですけど、これを

=OFFSET(範囲,0,0,MAX(INDEX((LEN(列)>0)*ROW(列),0)),列)

と設定して印刷プレビュー→ページをめくると…メモリ不足で落ちるんです…。

ま、うちの職場の環境ではと言うことではあるんですけど、i3・3GBメモリのマシンなので、大体どこもおんなじくらいか下手すりゃそれ以下ですよね事務系なんて。
でこれはアカンということで、印刷範囲外のセルに最初の数式を書き、そこを4番目の引数に指定しました。これでひとまず安心です。

おまけ:VBA限定ですが、最終行だけならUsedRange.Rows.Countプロパティでも取得できます。ただし書式設定していないことが条件。…事実上使えない知識ですね…。

2019年6月15日土曜日

【EXCEL】フリガナ設定されてないセルにだけフリガナを振る

フリガナ設定についてはちょっとググると

SetPhonetic

と言うメソッドがヒットして、For〜NextとかLoopを使えば全レコードに自動でフリガナ設定出来ることはわかります。

でもそこから一歩進んで、タイトルのようなフリガナ設定されてないセルにだけフリガナを設定したいときにどうすればいいのか、と言うことについて書いてある記事というのは見当たりませんでした。

…まあ、Phoneticプロパティを参照して仕様を確認したらあとは自分で考えろや(仕様を確認しに来るくらいだからそのくらいのアタマはあんだろがよ?)と言うことなのかもしれませんが。一応記載しておくと、以下の構文で取得できます。

Range. Phonetic. Text = “文字列”

=(イコール)の左が取得、右が設定です。

これで自由自在に設定出るだろう、と思うところなんですけど、ここに落とし穴がありまして、「フリガナが設定されていないセル」のPhonetic.Textを取得したときの結果は「""」(長さ0の文字列)ではないのです。なんとこれがOfficeのサイトにも載っていないと言う。

実際自分でも仕様を確認して試してみて分かったんですが、上記処理の結果は「セルの値」を返します。つまり


この画像の状態の場合返ってくる値は「"不可説不可説転"」であるという訳。マジか。

さて、これを踏まえた上で、セルにフリガナが設定されているか判定するには

If Cells(行, 列).Phonetic.Text = Cells(行, 列) Then

と言う構文にしないといけないということです。

以下、「3列目にあるレコードの内、フリガナの設定されていないセルにだけ設定する/レコードのある分だけ繰り返す」処理のサンプルコードです。

Sub phoneticX()
 Dim i As long, x As Long
 Dim phone As String, WSphone As String
 x = Cells(65536, 1). End(xlUp). Row

 For i = 2 to x
    phone = Application. GetPhonetic(Cells(i, 3))
    WSphone = Cells(i, 3). Phonetic. Text

 If WSphone = Cells(i, 3). Text Then Cells (i, 3). SetPhonetic
 Next i
End Sub

構造としてはIf節で➀フリガナ設定されているか判定、➁設定されている場合はスルー〜If節脱出、➂設定されていない場合はSetPhoneticする、これだけですね。

因みに、セルに入力された文字列の特定の部分のフリガナだけ取得/編集したいとお嘆きのあなたに朗報!その場合は

Range. Characters(開始位置, 設定する文字数). PhoneticCharacters = “文字列”

の構文で可能です。ミソは設定する文字数が、セルに入力されている文字数であることでしょうか。よく考えれば当たり前の話ですが、フリガナを扱っているのでフリガナの文字数だと勘違いしてしまいがちなので注意しましょう。あとはLenとかMidとか何ならStrConvとか駆使すればどうとでもなると思います。

2019年6月9日日曜日

【Android】縦画面アプリを横画面にしてみる

あまりこういう例は多くないとは思うんですけど、たまに横画面強制なのに入力フォームにソフトウェアキーボードが出てきて画面が全部隠れてしまう、ということがあります。最近は激横長比率ディスプレイも増えてきてるので(自分もそういう端末使ってる)、イライラした経験のある方もわりといるんではないでしょうか。

とは言え今回のきっかけは縦位置強制のアプリ。『アリス・ギア・アイギス』というゲームアプリですが、攻略記事をググっていると横位置の画像が結構出てくるんですよ。で、なんだろうって思っていました。

アリス・ギア・アイギス(Google playストア)

iPadでプレイすると縦横比率がスクエアに近いので、バトル画面のボタンカスタム配置とかも結構いい感じではあるんですが、それでも横長ではない。なんだこれ?どうやって撮ったんだ?と思っておりました。

で、最近このゲームがPC版をリリースしたんです。PC版と言っても蓋開けてみればBlue Stacks(androidエミュレータ)のカスタムだそうで… DMMゲームプレイヤーってヤツなんですけども。自分は既にデスクトップPCにブルスタを入れていたので、競合する…というかそんなもん2つも入れて容量圧迫するのが怖かった(しかもゲームパッド対応はまだだとか)のでアンインストールしましたが、なにやら公式で横画面表示ができる設定になっているんだそうです。カスタムとは言えエミュレータなので、つまりandroidの画面制御を行えるなら、じゃあスマホだってできるんじゃね?と思い調べると…

ありました。「RotationControl」というアプリです。

RotationControl (Google Playストア)

これを入れるだけで基本画面位置の強制設定ができるらしいですが、きれいに表示できるものできないもの、またできるものでもそのアプリ毎に色々設定が必要なようです。

まずRotationControlの方で横画面、あとシールドマークをタップして画面固定を強制しておきます。で、アリスギアの方で、画面設定から解像度やフレームレートを最高にし、さらに「実験的機能」として「デバイスの解像度を利用」をONにします。これがないと比率がびろーんてただ伸ばしただけになってしまいます。

(ここです)

(表示されました。事務所が広い!)

さてこの状態はこれで良いんですが、バトル画面は注意が必要です。上の画像で「表示領域を16:9にする」をONにしているとその後の比率がおかしくなります。


(これが)

(こうなって)

(縦画面に戻しても治らないw)


と言ったところですね。ネットでの意見を見ているとOSがカスタムされているとこう言った不具合は起こりやすい…ようです。ただ最近のandroidスマホ/タブレットで素のOSのものなんて激安の中国製とかしかなく、その辺はスペック的に高解像度で動作させるのに不安があります。実際これやるならスマホじゃ小さいので8インチ以上のタブレットが欲しいところだけど…うーん。

せめてカメラ距離設定は近くしたほうがいいですね。

(距離:近でもこのくらいの距離感になります)

2019年6月3日月曜日

steamでファイティングコマンダーを使う

ストリートファイターVをやっていますが、あまりにもたまにしかやらないもんだから、起動するたびにアプデがかかる、みたいな様子です。そんな様子だもんだからDirectInput仕様のコントローラー(ゲームパッド)が使用できなくなったのを知らずにいました。いや、正確にはTwitterなんかで見てたんだけど、すっかり忘れていました。

それまではXboxコントローラとしてエミュレート…というか偽装?した上でJoyToKeyを使って動かしていました。詳しくは以下の記事を。
PCゲームでXbox以外のコントローラーを使う!「x360ce」の使い方
そう、していましたんですけど、なんだかそちらの設定も消えたのか、ストVを起動してもなぜか十字ボタン以外反応しなくなっていました。で、またキーボードの割り当て見てJoyToKey設定すんのもだりーし、それよりXboxの仕様であるXInputは対応してるわけだし、じゃあsteamの仕様ってどうなってんだっけと。いや、それまで分かってなかったってのも相当なアレだよ?

それはそれとしまして、カプコンのサイトにちゃんと書いてありました。
【重要/Steam版】DirectInput対象のコントローラ設定について
つまり、XInput化してあれば親アプリ(プラットフォーム)であるsteamの設定で認識させることができると。以下、画像を御覧ください。

 (すいません、タスクバーは横置派です)

(カーソルがなくてすいません、一番上「一般のコントローラ設定」です)

(「Xbox設定サポート」にチェックを入れて戻ればOK)

(認識されてます)

これで問題なく動きました。

さて、タイトルですけどHORIファイティングコマンダーは前面右側6つボタンです。セガサターン世代としてはこの仕様が安心しますよね!ていうかPSコンとか4つボタンだと大P大Kは側面で押しづらいじゃないですか。どうしたってこれがいいんだよね。

というわけでした。わりとここまで流れで載ってるサイトないので書きました。参考にどうぞ。

2019年5月20日月曜日

IFTTTと外部サービスの連携を考える

これ実は別名義で公開しようと思ってたんだけど、どうもしっくり来なくて、よく考えてみたら結局webサービスの使い方ノウハウじゃん、と思ったのでこちらに記載することにしました。ちょっと長いけど。

noteを使い始めた

noteを使う事にしたんです。その経緯について。別名義で絵を描いてまして。告知や宣伝が大事なのはわかってはいるんだけど、なるべく制作に専念したい!と言う絵描きさんは多いと思います。なんと言っても制作は時間がかかりますから。と言うことで「ものぐさする」ための方法を色々考えていたのだが、やはり軸はIFTTT。この機能をうまいこと活用しつつ、手軽に発信していける環境を構築するのに、noteは使えるぞと。よくできているサービスだなと思います。じゃあnoteに書けよ…とは言いたいところだけど、乗り換えはまた手間がかかるので、まあこれまで使ってきたサービスを流用してひとまず整えたと言えるんじゃないでしょうか。折角なのでその思考をここに記しておきます。
とは言えこれはあくまで「ものぐさ」環境のためのものであり、これでアクセスが増えるとかそういったことではございません。

(以下、追記とします)