2019年6月2日日曜日

Stream Deck を4.3にアップデートしたら、「開く」アクションでエラーが出るようになった!


※この記事のエラーは2019.10のアップデートで解消されました。現在はエラーなく動作します。


先日、Stream Deck が 4.2 から 4.3 にアップデートされ、Stream Deck XL と Stream Deck Mobile が発表されました。
Stream Deck XL 欲しい!けどそんなにボタン使わないし悩ましいところですね。

Stream Deck は頻繁にアップデートされ、様々な機能の追加やデバッグされていて喜んでいたのですが、今回は思わぬバグが発生して困ってしまいました。

Stream Deck には「開く」アクションという、ファイルを開く機能があるんですが、今まではどのファイルも問題なく開けていたんです。
ですが、4.3にアップデートしたら、なぜかほとんどが開けなくなっていました。

動作を色々と調べた

調べた環境は、Windows 10 Home 64bit です。

前のバージョン4.2.1.10055では正常に開きました。
今回のバージョン4.3.0.11246で出るバグのようです。

更に調べると、どうやらパスに含まれる全角文字の文字数が問題のようです。
4.2は調べてないので上限はわからないのですが、4.3ではフルパスが英数字で247文字まではエラーにならずに開きました。
ここまでは問題ないのですが、全角文字は1文字で9文字程でカウントされるようで、
ドライブレターと拡張子を除くと、全角文字で27文字程でエラーになるみたいです。

英数字だと

D:\123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890.txt

ここまでの長さのフルパスが問題なく開けますが、全角文字を使うと途端に短くなります。

エラーになる境界線

D:\あいうえおかきくけこ\さしすせそたちつてと\なにぬねのは.txt → 開ける
D:\あいうえおかきくけこ\さしすせそたちつてと\なにぬねのはひ.txt → エラーになる
D:\1234567890\1234567890\123456.txt → 開ける
D:\1234567890\1234567890\1234567.txt → エラーになる
※数えやすいように数字を全角にしています。

ちなみに、4.2では「Webサイト」アクションでも同様にファイルが開けたのですが、4.3では文字数に関係なくファイルが開けなくなっていました。

じゃあどうしよう?

ちょっと使いづらくなってしまいました。
どうしたらいいでしょうか?
すぐ思いついたのは次の5つです。

1.次のアップデートまで待つ
2.バージョンを4.2に戻して使う
3.コマンドプロンプトを経由して開く
4.ファイルを開く自作スクリプトを経由して開く
5.UWSCのみだったら、UWSC本体を経由して開く

私は4と5で行こうと思います。

2.バージョンを4.2に戻す

一番簡単ですね。
一度 Stream Deck 4.3をアンインストールして、公式ページの Stream Deck 4.2 をインストールすれば解決です。
プロファイルはそのまま引き継がれるようですが、一応プロファイルを書き出してバックアップしといた方がいいと思います。

Elgato Stream Deck バージョン履歴
https://gaming.help.elgato.com/customer/en/portal/articles/2793637-elgato-stream-deck-software-release-notes

3.コマンドプロンプトを経由して開く

Windows標準のコマンドプロンプト(cmd)で開く事もできます。
頭に「C:\WINDOWS\system32\cmd.exe /C 」とつけて起動すると、フルパスを文字列として処理するようで、開く事ができます。

D:\あいうえおかきくけこ\さしすせそたちつてと\なにぬねのはひ.txt → エラーになる
C:\WINDOWS\system32\cmd.exe /C D:\あいうえおかきくけこ\さしすせそたちつてと\なにぬねのはひ.txt → 開ける
※exeの後に半角スペース

ただし、この方法は開いたウィンドウが閉じられるまでコマンドプロンプトのウィンドウが開きっぱなしで邪魔です(同期実行)。

非同期実行のやり方がわかりませんでした。
STARTとオプションを付けてもうまく動作させられませんでした。
わかる方は、よければ教えてください。

4.ファイルを開く自作スクリプトを経由して開く

指定したファイルを開くだけのスクリプトを作ったので使いたかったらどうぞ。
解凍すると次の2個のファイルが出てきます。
  •  open.au3 AutoItで書いたスクリプトのソースファイル
  •  open.exe 起動パラメーターに指定したファイルを開くだけの実行ファイル

使い方
open.exeを好きなところに設置し、ブロックを解除しておきます。
以下の説明ではopen.exeをCドライブ直下に置いた場合です。

「開く」アクションで、ファイルのパスの頭に
「C:\open.exe 」と入れます。
※exeの後に半角スペース

D:\あいうえおかきくけこ\さしすせそたちつてと\なにぬねのはひ.txt → エラーになる
C:\open.exe D:\あいうえおかきくけこ\さしすせそたちつてと\なにぬねのはひ.txt → 開ける

AutoItで作っているので、UWSCより少し早いと思います。

5.UWSCのみだったら、UWSC本体を経由して開く

私はUWSCをよく使っていたので、ついでにやり方を書いておきます。
UWSファイルはUWSC.exeから起動できます。
頭に「"C:\Program Files (x86)\UWSC\UWSC.exe" 」 と入れます。
※パスに空白があるので、両端を「"」(ダブルクォーテーション)で囲みます。
※ダブルクォーテーションの後に半角スペース

D:\あいうえおかきくけこ\さしすせそたちつてと\なにぬねのはひ.txt → エラーになる
"C:\Program Files (x86)\UWSC\UWSC.exe" D:\あいうえおかきくけこ\さしすせそたちつてと\なにぬねのはひ.txt → 開ける

余計なスクリプトが入ってないのでこれは起動が早いです。





Stream Deck はすごく使いやすく、お気に入りのデバイスなので、次のアップデートで治ってたらいいなぁ。

49 件のコメント:

Unknown さんのコメント...

自分も同じ症状で悩んでいて、ダウングレードして使っていたのですが、
先日思い立って、サポートに連絡してみました。
そしたら、すぐバグフィックスしてもらえたようです。
数日前の出来事なので、きっと次回のアップグレードに反映されると思って楽しみにしています。

よしお さんのコメント...

Unknownさん

教えてくださってありがとうございます!

そっかー、サポートにすぐ連絡してみたらよかったんですねー
私もアップデートが楽しみになりました。

Unknownさんの行動力に感謝感謝です!
ありがとうございました!

Unknown さんのコメント...

フォルダ名が(例 SONY6668054320000→SONY5557912340000と言う様に数字部分のみ)毎回変更になるフォルダを
ストリームデックで開く方法はないでしょうか?
宜しくお願い致します。

Unknown さんのコメント...

再び教えて下さい。ストリームデック15ボタンでウィンドウズ10で使用。自宅と会社で使用しています。自宅ではソフトを立ち上げると右側のメニューが日本語(例えばフォルダを作成、ホットキー、開くなど)になりますが会社では全て英語で表示されます。尚会社のパソコンでは制限か何かが掛かっていてエルカドHPに行けなく直接DL出来ない為自宅でUSBにソフトをDLして使用。
日本語変換する為のなにかが不足か?直接DLしないといけないかも。宜しくお願い致します。

よしお さんのコメント...

メニューが英語化しているとの事ですが、すいませんがその症状を見た事がないのでわかりません。

同じインストーラーを使って、画面の言語が違うのでしたら、会社のPCの環境か、設定が違うのだと思います。
会社のPCのWindowsは日本語版でしょうか。英語版やマルチリンガル版を日本語で使っていたりしませんか?
地域や言語の設定が日本以外や日本語以外になっていたり、優先する言語に日本語以外も入っていたりしませんか?

この辺りを確認してみて、だめなら会社のPC管理者の方に相談されるか、エルガトに直接問い合わせてみてください。

お力になれなくてすみません。

よしお さんのコメント...

Unknownさん

質問ありがとうございます。

フォルダ名が毎回変更になるフォルダを開くには、Stream Deckの機能だけではできないと思われます。

これをやる為には、
①フォルダ名が変更になるフォルダ名を開く為のプログラムを作る
②作ったプログラムをStream Deckから実行する
としないといけないと思います。



batファイルという簡単なプログラムみたいなものをご存じでしょうか?
「メモ帳などで書いたプログラム」を、「ファイル名を変えて保存」して、「ダブルクリックするとプログラムが実行できる」ファイルです。

ここから少し長くなりますが、下記のように操作していただければできますので、やってみてください。

まずは練習で、簡単なbatファイルを作ってみましょう。
Helloと表示されるbatファイルを作ります。
次のようにやってみてください。

①メモ帳を開き、下記のプログラムをコピペしてください。



▼ここから
echo off
echo Hello
pause
▲ここまでの3行をコピペする



②保存する時にファイル名を「テスト.bat」のように、最後を.batに変更して保存してください。

③保存した「テスト.bat」をダブルクリックしてください。

すると黒い画面が現れて

----------
X:\xxxx\xxxx>echo off
Hello
続行するには何かキーを押してください . . .
----------

のように表示されたでしょうか?
この練習では
「Helloを表示して待つ」
という命令をbatファイルが実行しました。



同じ要領で、
「フォルダ名が変更になるフォルダを開く為のプログラム」
も作る事ができます。

下記の例は、
同じフォルダ内で「SONY」と含まれるフォルダで「最初」にヒットしたフォルダを開くプログラムです。



▼ここから
::コマンドの非表示
@echo off

::ウィンドウを最小化
if not "%~0"=="%~dp0.\%~nx0" (
start /min cmd /c,"%~dp0.\%~nx0" %*
exit
)

::フォルダを検索するキーワードを設定する(部分一致)
set PARAM=SONY

::部分一致でヒットした【最初】のフォルダを開く
for /f "usebackq" %%A in (
`dir /b /ad ^| find "%PARAM%"`
) do (
set path_name=%%A
goto :break
)
:break
EXPLORER %path_name%
▲ここまでをコピペする



これをメモ帳にコピーし、
「ヒットした【最初】のフォルダを開く.bat」
などと名前を付けて保存してください。
で、SONY6668054320000などと同じフォルダに入れ、ダブルクリックしてみてください。
名前にSONYが含まれるフォルダが1つ開くと思います。

ここまでくれば、あと1歩です。

先ほど作った「ヒットした【最初】のフォルダを開く.bat」を
Stream Deck のアクションで、システム内にある「開く」に設定してみてください。

ダブルクリックした時と同じように開くと思います。



こんな感じでどうでしょうか?

検索するキーワードは「SONY」としていますが、11行目にある
set PARAM=SONY
のSONYの部分を検索したいキーワードに変更もできます。
書き換えたい場合は、先ほどのbatファイルをメモ帳から開いてくださいね。

また、上記の例では、ヒットした「最初」のフォルダを開きますが、
ヒットした「最後」のフォルダを開いたり、ヒットする「すべて」のフォルダを開く事もできます。
必要なら再度連絡ください。

ではでは

Unknown さんのコメント...

早速お返事有難うございました。最初の質問はパソコンは疎いので、プログラム等は全く組む事ができませんが詳しい説明で
すぐできました。あとヒットした「最後」のフォルダを開きたいので教えて下さい。

2つ目の質問ですが、会社のPCのWindowsは日本語版でしょうか。英語版やマルチリンガル版を日本語で使っていたりしませんか?
地域や言語の設定が日本以外や日本語以外になっていたり、優先する言語に日本語以外も入っていたりしませんか?
はパソコンのどこを見て確認すればわかるのでしょうか? 
会社のPC管理者の方に相談されるか、これはうちの会社では聞いても教えてくれません。
尚2つめの質問は右側のメニューのみ英語表記でタイトルやテキスト等は切りかえキーを押せば日本語に出来ますので、
ただ、日本語表記だと見やすいかなっと思って質問させてもらいました。
お手数をお掛けしますが宜しくお願い致します。

Unknown さんのコメント...

すみません後1つだけ教えて下さい。あるエクセルシート(例 シート名が「チェックリスト」)を開いてその中の特定のセル(D2とか)をコピー ここまでの作業をマクロで組んでストリームデックに登録したいのですが?
そのあと別のエクセルシート以外のアプリにホットキーで貼付けしたいのですが? *D2は数字です。
何度も大変申し訳ございませんがお願い致します。
 追記 前の質問で最後のフォルダを開くは大丈夫でした。(必要がありませんでした)

よしお さんのコメント...

ちょっと具体的な操作がよくわからないので、もう少し教えてください。

そのエクセルシートの名前と、特定のセルの場所(D2とか)は毎回同じ場所という意味でしょうか?
「マクロを組む」というのはエクセルのマクロの事ですか?ストリームデッキのマルチアクション等の事ですか?
あと、エクセルのマクロ機能の使い方はわかりますか?

よしお さんのコメント...

Windowsが日本語版かどうかですが、ログイン時に「ようこそ」と表示されれば日本語版だと思います。

地域や言語設定は、
「スタートメニュー」→「設定」→「時刻と言語」
左のメニューの「地域」と「言語」をクリックして確認してください。
右側に出る内容で、日本や日本語になっていれば大丈夫だと思います。

ただ、私のPCでも試したんですが、
「地域」の中の「地域設定」の「日本語(日本)」を「英語(米国)」に変更して、ストリームデッキを再起動したら英語表示にはなりましたが、Unknownさんの言われる「右側のメニューだけ英語表記」という状態にはなりませんでしたので、地域や言語の設定は関係ないかもしれませんね。

あと、考えられるのは、インストールが正常に完了せずにファイルが一部壊れている事も考えられます。
・Windowsを再起動してみる(シャットダウンではなく、再起動です)
・ストリームデッキのソフトウェアを入れなおしてみる
くらいでしょうか。
入れなおす場合は、ストリームデッキのプロファイルのバックアップ必ず取ってくださいね。
あと入れなおすインストーラーは再度ダウンロードし、別のUSBメモリを使ってみてください。

これでだめならわかりませんので、エルガトに問い合わせてみてくださいね。

よしお さんのコメント...

「最後」のフォルダを開くやつですが、
不要との事でしたが、ついでなので記載しておきます。



ヒットした【最後】のフォルダを開く.bat
▼ここから
::コマンドの非表示
@echo off

::ウィンドウを最小化
if not "%~0"=="%~dp0.\%~nx0" (
start /min cmd /c,"%~dp0.\%~nx0" %*
exit
)

::フォルダを検索するキーワードを設定する(部分一致)
set PARAM=SONY

::部分一致でヒットした【最後】のフォルダを開く
for /f "usebackq" %%A in (
`dir /b /ad ^| find "%PARAM%"`
) do set path_name=%%A
EXPLORER %path_name%
▲ここまでをコピペする



ついでに「すべて」を開くパターンも載せておきます。
※たくさんヒットするフォルダ内では実行しないでください。
※ヒットするフォルダは、5個くらいまでにしといた方がいいと思います。
※100個とかあると画面が大変な事になります。

ヒットした【すべて】のフォルダを開く.bat
▼ここから
::コマンドの非表示
@echo off

::ウィンドウを最小化
if not "%~0"=="%~dp0.\%~nx0" (
start /min cmd /c,"%~dp0.\%~nx0" %*
exit
)

::フォルダを検索するキーワードを設定する(部分一致)
set PARAM=SONY

::部分一致でヒットした【すべて】のフォルダを開く
for /f "usebackq" %%A in (
`dir /b /ad ^| find "%PARAM%"`
) do EXPLORER %%A
▲ここまでをコピペする

よしお さんのコメント...

ストリームデッキに設定するマクロ的な使い方ですが、
基本的には、
「複数の手順があるキーボード操作を1つのボタンに覚えさせる」
と思っていただくと、できる事がわかりやすいかもしれません。

例えばですが、
エクセルでセルを選択まではマウスでやって、
ストリームデッキのボタンに
「コピーして、別のアプリ張り付けて戻ってくる」
を設定するとします。

まずは操作する内容を箇条書きにしてみてください。
この場合、

・コピー(Ctrl+c)
・別のアプリに切り替える(Win+Tab 直前のアプリを選択)
・張り付け(Ctrl+v)
・エクセルに戻る(Win+Tab 直前のアプリを選択)

の操作が必要で、
この操作を実際にキーボードのみでやってみて、動作に問題がなければ、
ストリームデッキの「マルチアクション」アクションで、
1つ1つの動作を「ホットキー」で設定していきます。
それで動作を確認してみて、早すぎる場合は「遅延」アクションを入れて調整したりすればいいと思います。

こんな感じで、キーボード操作を「マルチアクション」アクションに設定していけば、アイデア次第で色々な事ができます。
色々と試してみてくださいね。
また、PCはマウスを使わなくてもキーボード操作(ホットキーやショートカットキーなど)で色々な動作ができるようになっています。
キーボード操作がわからない場合は、インターネットで調べてくださいね。





また、キーボード操作でできない、マウス操作や、選択する時に名前や場所が毎回違う場合
などはストリームデッキの機能だけではできません。

そういった事をしたい場合は、それに必要なプログラムが必要になります。
エクセルだったらマクロ機能やVBAの知識が必要です。

Unknown さんのコメント...

すみません、エクセルシートの名前と、特定のセルの場所(D2とか)は毎回同じ場所という意味でしょうか?→シート名は同じで、毎回同じ場所です。「マクロを組む」というのは最初の質問の返信で頂いたbatファイルみたいなものです。マクロ機能の使い方はわかりますか?→すみません、殆んどわかりません。
ストリームデッキのボタンに
「コピーして、別のアプリ張り付けて戻ってくる」→コピーして別のアプリに貼付けするだけで戻ってこなくていいです。このD2の数字を別のアプリに貼付ける作業をストリームデックのボタンに登録したいだけであります。現状はエクセルを開いてD2のセルをctrl+cでコピーして開いている別のアプリにctrl+v操作して貼付けしています。
初歩的な質問ばかりで申し訳ございません。

よしお さんのコメント...

ちょっと質問されている「やりたい事」がよくわかりません。

「コピーして、別のアプリ張り付ける」
を1ボタンに割り当てるだけでいいのでしたら、上記の
・コピー(Ctrl+c)
・別のアプリに切り替える(Win+Tab 直前のアプリを選択)
・張り付け(Ctrl+v)
の3手順をストリームデッキの「マルチアクション」アクションに登録すればいいのではないでしょうか?


また、エクセルのコピーするセルの場所に移動したいのでしたら
F5キー(またはCtrl+g)でジャンプができるので、
後で切り替えるアプリを選択した後で、エクセルを選択し、

セルに移動する
・F5 ジャンプを開く
・d2 と入力
・Enter
・コピー(Ctrl+c)
・別のアプリに切り替える(Win+Tab 直前のアプリを選択)
・張り付け(Ctrl+v)

という手順でどうでしょうか?


別のアプリへの切り替えがWin+Tabでうまくいかない場合は、
・Win+数字キー(テンキーじゃなく、文字を打つ方の上部の数字キー)
で、タスクバーのアプリに切り替え(左から1.2.3と指定できる)ができるので、
これを使ってもいいかもしれません。

Unknown さんのコメント...

色々と質問しましてお手数をお掛けして有難うございました。上記の回答で上手くいき大変助かりました。

よしお さんのコメント...

お役に立てたようでよかったです。

StreamDeckはアイデア次第で本当に色々な使い方ができますし、ショートカットキーなんかを覚えればさらにできる事が広がります。
いつもやっている面倒な手順なんかをボタンに割り当てると、時短になりますしすごく楽になります。
楽しんで色々やってみてくださいね。

ではでは

よしお さんのコメント...

自己レスですが、
アプリ間のフォーカス移動は、「その他のアクション」で「Focus Window」を入れればできるようです。
知ってると便利かもですね。

Unknown さんのコメント...

すみません本日質問したと思いましたが内容が何処かに行ってしまいましたので再度質問させて下さい。
フォルダの中に入っているエクセルシートを開く(ストリームデックの開くボタンで私にもわかります)が、その後(エクセルを起動したあと)H1のセルをコピーする→ここまでの動作はどの様にマルチアクションに登録するのでしょうか?
つまりフォルダの中に入っている毎回同じシート名のエクセルシートを起動してH1のセルのコピーする操作までをマルチアクションに登録したいです。
宜しくお願い致します。

よしお さんのコメント...

Unknownさん

先週末に質問された方でしょうか?
エクセルを開いた状態でマルチアクションを実行するのですよね?

それでしたら「マルチアクション」アクション内に
次の設定を1行づつ登録してみてください。

・[ホットキー](F5) ジャンプを開く
・[テキスト] h1 と入力
・[ホットキー] (Enter)
・[ホットキー] (Ctrl+c)コピー

でどうでしょうか?

動作が早すぎてうまくいかない場合は、間に「遅延」を入れて調整してください。

川ちゃん さんのコメント...

ありがとうございました。大変助かりました。

よしお さんのコメント...

お役に立てたようで何よりです。
Stream Deck はすごく便利なので、色々と試してみてくださいね。

Unknown さんのコメント...

私ばかり度々申し訳ございません。エクセルでH1(数字13桁)を前回の質問の様に・[ホットキー](F5) ジャンプを開く
・[テキスト] h1 と入力や ctrl+cでコピーして他のアプリに貼付けして、Enterを押してもソフトによって貼付けした13桁の数字
のあと(下1桁の後)に空白の文字がコピーされている為backspaeキーで消してEnterキーを押さないとダメな場合があるのですが、コピーする段階で最初から空白がはいらないやり方はあるのでしょうか? ストリームデックボタンで登録したいのですが?
 参考例 6548877660000○○○  ○部分にスペースキーで空きを作ったみたいに空白が入っている。その為backspaeキーを押して消してエンターを押さないとエラーとなってしまいます。

よしお さんのコメント...

セルH1の数値の空白というのはあったりなかったりするという事でしょうか?

ストリームデッキではコピーした文字列の編集等の機能はないと思いますので、それ以外で解決するしかないと思います。ざっと思いついた解決方法をおすすめ順で紹介しますね。

どの方法でもできると思いますが、なるべくならエクセルで解決した方がいいとは思います。



◆エクセルファイル自体を編集できる場合
元となった数字自体か、数字を入力する段階で空白を入れない様にするのがいいと思います。

1.エクセルの入力時に空白を入れないようにする場合
⇒入力規則を使う

2.セルH1がどこかを参照していて数式を参照する事ができる場合
⇒エクセルの関数で空白を削除する
例1)SUBSTITUTE関数を使って、空白を削除しておく
値が数値だけなら以下でもできます
例2)VALUE関数で数値にする
例3)例えば、セルH2に「=H1+0」などと入力して、数値にする

関数などの使い方は、インターネットで調べてください。



◆フリーソフトを入れていい場合

3.クリップボードの文字列を整形するフリーソフトを使う
⇒CT Converterで空白を削除する設定をしておいて、エクセルでコピー後にホットキーでCT Converterの整形を実行する
https://forest.watch.impress.co.jp/docs/serial/okiniiri/600478.html



◆数字13桁で、頭に空白が入っていない場合は、ストリームデッキだけでもできそうです。

4.セルH1が参照ではなく、数値が直接入力されている場合
⇒エクセルでコピーする際に、Ctrl+Cだとセル毎コピーしてしまうので、文字だけ選択してコピーする
--
F2→Home→Shiftを押しながら右矢印を13回→Ctrl+C
--
で13桁のみ選択してコピーできます。

5.セルH1が参照で、上記でコピーできない場合
⇒張り付ける時に13桁以外を削除する
他のアプリに貼付けして、Enterを押す前に、Backspaceで消すのではなく、
張り付けた後、
--
Home→右矢印を13回→Shiftを押しながらEnd→Delete
--
で、13桁以外が削除されるはずなので、Enter



解決できたでしょうか?

Unknown さんのコメント...

すみません。昨日、夕方お礼のコメントを入力して、公開ボタンをクリックしたのですが、今朝見ると何も入力されてませんでした??。
4.セルH1が参照ではなく、数値が直接入力されている場合
⇒エクセルでコピーする際に、Ctrl+Cだとセル毎コピーしてしまうので、文字だけ選択してコピーする
--
F2→Home→Shiftを押しながら右矢印を13回→Ctrl+C
--
で13桁のみ選択してコピーできます。
 上記の操作も自動(ストリームデックに登録)で操作できる様にならないでしょうか?
レベルの低い質問ばかりで申し訳ございませんが宜しくお願い致します。

よしお さんのコメント...

--
F2→Home→Shiftを押しながら右矢印を13回→Ctrl+C
--
これをストリームデッキの「マルチアクション」アクションに登録してください。
1手1手を「ホットキー」アクションを登録していく要領でできると思います。

Unknown さんのコメント...

有難うございました。月曜日に会社のパソコンでやってみます。

Unknown さんのコメント...

すみません。ほんとに最後ですのです。エルガトに問い合わせしてみてください。→これは日本語で問い合わせしても
ダメでしょうか?

よしお さんのコメント...

問い合わせた事がないのでわからないです。
英語の方がいいんじゃないですか?

Unknown さんのコメント...

了解しました。色々と有難うございました。

Unknown さんのコメント...

     D1セル 秋田支店 E1社員番号 F1岩手支店 G1社員番号 H1静岡支店 I1社員番号 J1山形支店 K1社員番号
     D2セル  伊藤  E2 33331  F2 中田  G2 16489  H2  -        J2 米田  K2 16477
D3セル  伊東  E3 21345  F3 中村  G3 20045  H3  -        J3 田辺  K3 30215
     D4セル  田中  E4 27489  F4 前田  G4 19941  H4  -        J4  -

いつも回答有難うございます。質問させて下さい。エクセルほんとの初心者です。上記の様なエクセルに社員名簿があります、
A1 山形支店 と入力すると
A2  米田 B2 16477
A3 田辺 B3 30215 と自動で出てくる関数を教えて下さい。(静岡支店の様にいない支店や他の支店で100名以上の支店もあります。山形支店の様に2人しかいない支店はA4、A5....は空白表示になる様にお願いいたします。
お忙しいところ恐縮ですが宜しくお願い致します。

よしお さんのコメント...

Unknown さん

このブログは、メモみたいなもので、ページの内容について質問があれば補足しているだけですので、
こういったエクセルや関数についての質問は、解説をしているサイトや、知恵袋などにご質問していただけますでしょうか。
INDEX関数やMATCH関数などで調べてください。

Unknown さんのコメント...

すみませんでした

じょん さんのコメント...

たくさんの質問があり、お答えが大変だと思うので
時間があるときにお教えいただけると幸いです。

デスクトプとノートPCを使っており、同じプロファイルを共有したいのですが
そういったことは可能でしょうか。プロファイルのデータファイルがどこかしらにあり
コピペで共有できると大変便利なのですが

じょん さんのコメント...
このコメントは投稿者によって削除されました。
よしお さんのコメント...

じょん さん

ご質問ありがとうございます。

GW中は忙しくて返信が遅くなってしまいました。


じょんさんが実現したいのは、
デスクトップPCとノートPCを並べて、Stream Deckをそれぞれ1台づつ接続して同時に使用しているというイメージで合ってますか?
やりたい事は
・プロファイルを同期したい
・同期ができなければなるべく手軽にプロファイルをコピーしたい
という事でいいでしょうか?


ちなみに、現在はどうやってプロファイルのコピーはどう操作されていますか?
保存した「プロファイル」のファイルや、「すべてのバックアップ」のファイルはダブルクリックで復元できるのはご存じでしょうか?

共有フォルダがあるのでしたら、
・コピー元のPCでプロファイルを「すべてをバックアップ」で共有フォルダに保存
・コピー先のPCから共有フォルダのプロファイルデータをダブルクリック
・「バックアップから復元してよろしいですか。」と聞かれるので復元を押す

※「すべてのバックアップ」で保存したデータからの復元では「プロファイルがすべて上書き」となり、「書き出す」で個別のプロファイルを書き出したデータから読み込んだ場合は「プロファイルの追加」となります。
※試す際は、両方のPCのプロファイルのバックアップを保存してから試してしてくださいね。
上記の方法でもそんなに手間はないように思います。


また、じょんさんのおっしゃる「プロファイルのデータファイルがどこかしら」を調べたのですが、
C:\Users\ユーザー名\AppData\Roaming\Elgato\StreamDeck\ProfilesV2\
に入ってるようです。

「ProfilesV2」フォルダの実体は共有フォルダにおいて、シンボリックリンクで置き換えてみたんですが、
データ自体は同期できているみたいなんですが、Stream Deckが読み込むのは起動時のようで、変更されたデータを読み込むには一度閉じて再度起動しないといけなかったです。
なので、素直にバックアップアップをダブルクリックした方がいいような気がします。


また、頻繁に同期が必要で、もっと手軽に同期するしたければ、RPAなどを使って
・ボタン一つでバックアップを保存する
・ボタン一つで復元する
を実現すればなんとかできるかもしれません。
Power Automate Desktop や UWSC などを調べてみてくださいね。


どうでしょうか?
力になれましたでしょうか?

まる さんのコメント...

はじまして。
同じ症状で困っていたので参考になりました。

現在困っている事があり、お知恵をおかりできないかと思い書き込みました。
Elgato Stream Deckを使っています。
MK.2ではない、一個前?の15ボタン式の方です。

購入してしばらくは、ファイルやフォルダ、アプリケーションを登録してボタンを押すと、開く時に毎回最前面に表示されていました。
ソフトウェアのバージョンはおそらくStream_Deck_4.3.3.11845よりも前だったと思います。

しかし最近最新版にアップデートしたら、
ファイルやフォルダ、アプリケーションを開く時にボタンを押すと、毎回最背面に表示されるようになってしまいました。

これは仕様なのでしょうか。
最前面に表示されるようにできないでしょうか。

よしお さんのコメント...

まる 様

コメントありがとうございます。
返信が遅くなってすみません、昨日は忙しくPCに触れませんでした。

私の使用しているPCで試したら、フォルダを開く動作は問題なく最前面で開けました。試したバージョンは以下の2つです。

・5.2.1.15025
・5.3.3.15214(さっきアップデートした最新版)

どちらも開く動作で最前面に表示されました。
まる様のいっている最背面に表示されるのはStreamDeckの仕様ではないように思います。
もしこのページのopen.exeを使っている場合はそれは使わずにStreamDeckの開くアクションを使ってください


解決法としては以下の手順を試してみてください。

1.まずは最新版のバージョンが同じか確認してください。

2-1.バージョンが違うなら再度最新版にバージョンアップしてみてください。
軽微なバグ等は告知なしでロールバックする事も考えられます。

2-2.同じバージョンだったらStreamDeckのアプリを一度アンインストールして再度インストールしてみてください。
・アンインストール前にバックアップは必ず取ってください。
・アンインストールしたら一度再起動して、その後インストールしてください。

3.ここまでやってダメだったらStreamDeckではなくその他の設定やアプリを疑った方がいいと思います。
常駐しているアプリなんかを一個づつ終了して動作を確認してみてくださいね。


解決しましたら一報頂けると嬉しいです。

まる さんのコメント...

ご返信感謝いたします。

教えていただいた事を試してみて、解決法の2-2までやってみましたが特に変わらずで、3も試してどれが影響を与えてるのか調べているため遅くなってしまいました。
もう少し調べてみて改めてご報告いたします。

ひとつ気になったのですが、フォルダを開く動作の際、例えば「Windows」のフォルダを指定したい場合、
「App/ファイル:」の所への入力方法は、下記のうちどれが正しいのでしょうか。

・C:\Windows
・C:/Windows
・"C:\Windows"
・"C:/Windows"

よしお さんのコメント...

返信ありがとうございます。

再インストールしてもダメなんですね。
なんででしょうね?

今思ったのですが以下の事を試してもらえますか?
・「Win+R」を押して「ファイル名を指定して実行」ウィンドウを表示する
・名前欄に「C:\Windows」を入力しOKを押す
これでC:\Windowsのフォルダが開くと思いますが、この方法だと前面に表示されますか?背面に表示されますか?

①この方法で前面に表示され、Stream Deckの開くアクションで背面に表示される場合は、Stream Deckの動作が怪しい

②この方法でも背面に表示、Stream Deckの開くアクションでも背面に表示される場合は、Stream Deckは関係なく別のアプリかWindowsの設定が怪しい

かもしれません。
はやく解決するといいですね。



◆「App/ファイル:」の入力方法について
どれが正しいのかというと、どれでも動くのでどれでもいいです。

好みになりますが、私は
「C:\Windows」
を使用し必要な時だけ「"」で囲むようにしています。

理由はエクスプローラのアドレスバーでコピーするとこの形式でコピーされるのでそのまま「App/ファイル:」欄にペーストしているからです。

4パターンとも問題なく動作しますが、意味を知っているとしっくりくるかもしれないですね。


以下は解説になりますので興味があれば読んでください。

◆セパレーター
「C:\Windows」のようなアドレスを「パス」
「\」を「セパレーター」
と呼びます。
セパレーターはWindowsでは通常、半角記号の\(半角の円マーク「¥」かバックスラッシュ「\」で表示される)を使います。
Macではこのセパレーターが/(スラッシュ)を使用します。
互換性の為、Windowsではどちらも使えるようになっています。

◆ダブルクォーテーション
前後を「"(ダブルクォーテーション)」で囲む形式は
通常は不要なのですが、使わないといけない時があるのでそういった時のみ使用します。
「"」で囲んだものを文字のグループとして認識します。
フォルダを開くだけだと使わないのですが、プログラムを開く時にオプションを付けて開きたい場合に使用します。(「起動パラメータを指定し実行する」とかでググってもらうと解説があります)

上記の意味から通常は
「C:\Windows」
を使用し、必要な時だけ「"」で囲むといった使い方がいいんじゃないでしょうか。

まる さんのコメント...

ご返信ありがとうございます。

教えていただいた事を早速試してみました。

・「Win+R」を押して「ファイル名を指定して実行」ウィンドウを表示する
・名前欄に「C:\Windows」を入力しOKを押す

この方法だと前面に表示されます。

Stream Deckの動作が怪しいってことですよね。


新たに気づいた事があります。
IMEって何をお使いでしょうか?
私はずっとGoogle日本語入力のIMEを使っているのですが、半角入力にすると最前面に表示される事が多い気がします。

また、テキストの入力にも影響が出ています。
半角なら問題なく入力されますが、全角だと上手く入力されなかったり崩れたりします。
これが原因なのでしょうか。


◆「App/ファイル:」の入力方法について
詳しく教えてくださり、大変感謝いたします。

よしお さんのコメント...

状況を教えてくれてありがとうございます。

「ファイル名を指定して実行で前面、Stream Deckでだけ背面に表示される」との事ですStream Deckの動作が怪しいように思いますね。

IMEですが、私は標準のMicrosoft IMEを使っています。
IMEが動作に影響を及ぼすのは考えられます。
標準のMS IMEにしてみたらどうなりますかね?

また進展があったら教えてくださいね。

よしお さんのコメント...

他にも、元々Windowsで発生する症状というのもあるそうです。
もしかするとこれでマシになるかもしれません。

https://intaa.net/archives/5118

レジストリの値を変更する方法なので、嫌じゃなければ試してみてくださいね。
また、原因はわからないので根治ではなく対処法との事です。

よしお さんのコメント...

なんだか似た症状というのがいくつもあるみたいですね。
Real PlayerかReal Downloaderが悪さする場合も、とのこと。

http://moeechandon.blog111.fc2.com/blog-entry-228.html
https://answers.microsoft.com/ja-jp/windows/forum/all/%e3%82%a2%e3%82%af%e3%83%86%e3%82%a3%e3%83%96/56361521-920f-4c1e-aa58-9206aa8f660e

まる様の症状が出ているPCはWindws10でしょうか?
7以前だと上記URL内に書いてある「詳細なテキスト サービスを使用しない」のチェックで改善する事もあるそうですよ。

よしお さんのコメント...

上記のURLを参考にしても改善しない場合は、別の方法としてフリーソフトで新規ウィンドウが表示された際に強制的に最前面にするという方法もあります。

フリーソフトは色々あるのでどれでもいいですが、古いソフトになりますが私の使った事があるソフトで「Maximize Assistant」というのがあります。
https://www.vector.co.jp/soft/win95/util/se061153.html
これを入れて
・選択追加でエクスプローラのウィンドウを選択する
以下設定
・対象ウィンドウタブ > 対象ウィンドウキャプション項目 > 無視
・対象ウィンドウタブ > 対象ウィンドウクラス項目 > 変更しない(完全一致)
・サイズタブ > ウィンドウサイズ > 処理しない
・位置タブ > ウィンドウ位置 > 変更しない(処理しない)
・動作タブ > ウィンドウを最前面にする > チェック
・その他タブ > この定義を有効にする > チェック
・その他タブ > ウィンドウが新規作成された時のみ処理する > チェック

としていただければいい感じに動作するんじゃないかと思います。
興味があればどうぞ。

Unknown さんのコメント...

 今晩は質問したいのですが? Windows10で使用しています。一度完全にインスツール前のストリームデックを全く入れていない状態にしたいのですが?
設定→アプリ→アプリ一覧からElgato Stream Deck選択→アンインストール→再起動 と言う手順で行いました。 それから再度ElgatoホームページからソフトをDLしてインスツール
しました。その後ストリームデックを開いて中の右上の歯車マークをクリックしプロファイルを選択すると( Stream Deck XL/Stream Deck XL1/Stream Deck)いくつか前のと思われる
ものがでてきます。前のは完全に削除していのでお忙しい大変申し訳ございませんがアドバイスを宜しくお願いします。

よしお さんのコメント...

Unknown さん

ちょっとよくわからないのですが、「いくつか前のと思われるもの」というのはプロファイルの事でしょうか?
歯車マークをクリックし、「環境設定」ウィンドウが出てくると思いますが、「プロファイル」タブをクリックした時に左側のリストに出ている項目を消したいという事でしょうか?

それでしたら左側の項目を選択した状態で左下にある「-」ボタンをクリックしたら消えます。

もし消えなければこのプロファイルの実体は「C:\Users\ユーザー名\AppData\Roaming\Elgato\StreamDeck\ProfilesV2\」の中にある
「5228C727-C7A6-49E7-9CFE-F19D25A1C3D8.sdProfile」みたいな感じのフォルダになっていますのですべて削除すればプロファイルは初期化されます。

上記以上にStream Deckを入れていない状態に戻すというのは私にはわからないのでElgatoに直接問い合わせたみたらいいと思いますよ。

よしお さんのコメント...

Unknown さん

Stream Deckの初期化について今思ったのですが、
設定ファイルが残っているので再インストールした時にプロファイルなどのデータが読み込まれてしまったのだと思いますので、

Stream Deckをアンインストール後、
「C:\Users\ユーザー名\AppData\Roaming\Elgato\」
のフォルダが残っていると思いますのでこのフォルダ自体を削除したらいいのではないでしょうか?

ちなみに
「C:\Users\ユーザー名\AppData\」
というのは「アプリケーション設定フォルダ」の事で、アンインストールでは削除されない事があります。

詳しくは下記URLを参考にしてください。
https://mikasaphp.net/delete_manually.html

川ちゃん さんのコメント...

有難うございました。「詳しくは下記を参考にして下さい」に行って1つ1つ確認しながら
潰していったらできました。どうもありがとうございました。大変助かりました。

よしお さんのコメント...

川ちゃん さん

解決したようでよかったです。
また何かありましたらコメントしてくださいね。