ひらがな | 漢字 | 対応する英語 | 圧縮倍率 |
あ | 亜 | sub | 3倍 |
い | 胃 | stomach | 7倍 |
う | 鵜 | cormorant | 9倍 |
え | 絵 | picture | 7倍 |
お | 尾 | tail | 4倍 |
か | 蚊 | mosquito | 8倍 |
き | 木 | wood | 4倍 |
く | 苦 | pain | 4倍 |
け | 毛 | hair | 4倍 |
こ | 粉 | powder | 6倍 |
さ | 差 | difference | 10倍 |
し | 師 | teacher | 7倍 |
す | 酢 | vinegar | 7倍 |
せ | 背 | back | 4倍 |
そ | 祖 | ancestor | 8倍 |
た | 多 | many | 4倍 |
ち | 地 | ground | 6倍 |
つ | 津 | harbour | 7倍 |
て | 手 | hand | 4倍 |
と | 都 | capital | 7倍 |
な | 菜 | vegetable | 9倍 |
に | 荷 | load | 4倍 |
ぬ | 奴 | guy | 3倍 |
ね | 根 | root | 4倍 |
の | 野 | field | 5倍 |
は | 葉 | leave | 5倍 |
途中ですが飽きたのでここまでにしとうございます。
]]>友人から勧められたのと、年末年始にSwitchのDLソフトの半額セールをやってたのとで買った。BLは、商業本を年に1〜2冊読む程度で、よく分かってなかったのでテーマの敷居の高さ以外は全く吟味せず購入できた。しかし、主人公総受けというのに少し抵抗があり、購入してから一週間くらい寝かしてしまっていた。でかいイベント終わってやっと完全にフリーなオフ日に、軽い気持ちでなんとなくプレイし始めたらそれがとんでもない沼だった。AM2:00から翌日のAM5:00くらいまでほぼノンストップでプレイしてしまった。もちろん寝不足。
翌日、PC版(R18指定)を買うに至る。BLゲーム自体ほぼ初めてで、BLのドラマCDとかも聞けない質であるにもかかわらず、ストーリーが気になりすぎて気づいたら購入していた。この時点ではまだSwitch版の真エンドにたどり着いていなかったので、ストーリーの面白さは相当だと思う。
与党衆議院議員最年少の若手政治家、其扇晟尋(そのぎ あきひろ)は京都から選出され政界に参戦した。そのルックスと若さにより、マスコミや国民たちからアイドル政治家のような扱いを受けていることに憤慨を感じる日々を送っていた。
渋谷で起こったテロ事件をきっかけに、テロ対策本部が立ち上げられる。あるルートでは臨時の大臣に大抜擢され、公安のSPである我妻タイガ(あがつま たいが)とともに事件解決に奔走する。其扇の後援会とIAFのスポンサーをつとめる大企業、東郷グループの次期社長であり、テロの被害者である東郷遊馬(とうごう あすま)に寄り添い、協力しながらテロ対策として被害者を守るための法案を作る。テロ対策本部に参加することになった東京都の都知事である白洲武彌(しらす たけみ)とともに過去に起こった自衛官自殺事件の真相を暴く。そして、幼馴染で自身の有能な秘書である蓼丸一貴(たでまる かずき)とともにSP、都知事、IAFスポンサーの社長らを巻き込んで、テロ事件の真相に迫る。
まず、主人公である其扇はメンタルが強くて、優しくて、芯がしっかりあってすぐに好きになれたのが大きかった。気に留めるにはあまりに悪意でしかない国民のコメントとか、保身が大事で老害に成り下がってしまってる政治家たちとか、切り捨てるものはスッパリ切り捨てて切り替えられるポテンシャルをもつ其扇のことを普通に好きになった。こういうシミュレーションゲームって、流されてる感というか八方美人やってる感がどうしても拭えなくて苦手になりがちなのだが、今回そういう違和感を持たずにプレイできた気がする。
全ルートプレイした感想としては、劇場版相棒を見終わった後の爽快感とか達成感とよく似た感情でいっぱいだった。しかも、BLである必要があったかと言われると、必要がめちゃくちゃあった。これがすごいと思う。今まで私が読んできた商業誌のBLなどでは、萌えよりストーリーを重視した作品になると、BL要素はストーリーの要にならないものが多いように思っていたからだ。それでいて、刑事ドラマとか、サスペンスとか、推理小説が大好きな私にクリティカルヒットした。というか、それくらい刑事モノとかにどっぷりの私がしっかり楽しいと思える、厚みのある作り込まれたストーリーだった。
私はまず2〜3個自分で選択肢を選んで、その選択肢がどのルートに行くのか知った上でBAD ENDから回収していく傾向がある。各キャラに2つのGOOD ENDが用意されており、それに分岐していくつかBAD ENDがあった。以下はがっつりネタバレを含む。
◇◇
今回、最初になぞるルートとして私に選ばれたのは、我妻タイガという公安のSPだった。
まず、在日フラーシア人の経営する違法なゲイバーに潜入捜査させられることになったタイガに協力し、無国籍児問題と向き合うストーリー。正直ここがゲイバーである意味があるかと言われればそこまでなのだが、現実でもフィリピンパブとかって繁華街と二丁目の境目あたりにあるイメージがあるので無視する。タイガの持つバックグラウンドと外見をハニートラップとして利用するという面でもゲイバーである必要があったのだろう。上からの命令を淡々とこなすだけのタイガに対し、タイガへの不当な命令に怒る其扇。腐った公安の上層部に、タイガとタイガの上司である宮丘、そして国会議員である其扇の3人で立ち向かいつつ、無国籍児問題に切り込んでいく。その過程で、タイガのことを大切に想っていく描写が良かった。最後に事件解決後の休日をタイガの家で過ごすのだが、PCの版ではここにベッドシーンが追加されていた。あと、このルートのBAD ENDの蓼丸のメンヘラっぷりにちょっと引いたが、これが序の口だったと知るのはもっと後の話。
もう一つはテロ対策大臣としての任務を全うしながらテロ事件の犯人像に迫るストーリー。一見Dom/Subっぽいのに、其扇がDom(受)でタイガがSub(攻)っていう構図が良かった。Dom/Sub萌えが一切ない私でも「ふぅん、いいじゃん」となるくらい良かった。タイガが其扇の議員寮まで其扇を送り届けるときに其扇への忠誠を誓うシーンがあり、PC版ではここにベッドシーン(ベッドではない)が追加されていた。
◇◇
次に選んだのは、冒頭の共通ストーリー部分に出てきて気になっていた白洲都知事のルート。タイガルートで十分面白いと思っていたが、ここからが本当の沼のはじまりだった。
白洲武彌は元防衛庁の官僚だったが、ある自衛官の自殺事件をきっかけに政界に身を投じた。そもそもの土台や手腕も全く違うというのに、共に若いというだけでことあるごとに其扇と比較されることに嫌気が差していた。なので最初からかなり好戦的な態度を取ってくる。が、一緒に仕事をするにつれ其扇のことを認めざるを得なくなる。頭脳戦が多いのがこのルートで、最初こそ討論で頭脳戦を展開する2人なのだが、徐々にバディのように悪い笑みを浮かべながら生き生きと共闘する2人を見ることができる。
まず、白洲都知事と一緒に自衛官の自殺事件の真相を追うストーリー。SNSで募集した情報の中から気になる情報を見つけ、故人のプライベートなことだからとオフレコで白洲に共有したいと申し出る。オフレコということで白洲の自宅に招かれたところで、白洲に騙されて無理やりキスされ、それをすっぱ抜かれ白洲との熱愛報道を流される羽目になりキレ散らかす其扇(と蓼丸)。実証実験とのことで、同性愛というだけで批判的な見方をされることはないのではないか、と発言した其扇を試したのだろうと思い至る。そこからはダブルブレインとして自殺事件を追いつつ、途中折れそうになる白洲(と音坂)の背中を押しまくって救い上げる其扇の頼もしさがよかった。自殺した自衛官と白洲が恋人同士だったと勘違いした其扇が他のルートに比べて早めに恋心を自覚して抑え込もうとする描写もよかった。事件解決後被害者の家族に報告した帰りに傘に隠れながらキスをして恋人関係になり、白洲の自宅へ行ってなし崩しに。後日、ばっちりキスの瞬間をすっぱ抜かれ、白洲にまたあなたの仕業か、と抗議の電話をしたところ、会見中だった白洲にそのままマスコミに向かって交際宣言されてしまう、というのも白洲と其扇の明るくて強い関係性現れる締め方ですごく良かった。
もう一つは、白洲との協力を諦め、というか歩み寄ったのを一方的に跳ね除けられたために万策尽き、会議を入れまくることで、ただでさえ多忙な白洲をもっと忙しくしてオーバーフロー起こさせて潰そう、というストーリー。最初はあの白洲をいじめられるという高揚感から其扇の案に乗ってきた議員たちだったが、どの議員も自分が白洲と対峙できるほどの手腕を持ち合わせていないために保身に逃げるようになる。資料作成や会議の調整を全部押し付けられることになった其扇は、やがて疲弊していく。もう少しで折れてしまうというところで、都庁の長いエレベータに乗り合わせてきた白洲都知事が其扇を引っ張り上げてくれるのが、もう一方のストーリーと対照的ですごくよかった。擦り切れていく其扇に比べ、多忙ながらも都庁のスタッフを鍛え上げてメキメキ力をつけていく白洲がめちゃくちゃ頼もしくてかっこよかった。使い物にならなくなった其扇のことなんか簡単に切り捨てると思っていたのに、その埋もれかけていた有能さをしっかり見極めているために、其扇がほしいと言い切れる一途さ。
ここで離党の意志を蓼丸じゃなく晴山に相談しに行ってしまうと、其扇は民自党と、それに拘っていた蓼丸に諦めをつける。そして、エレベータ内で交わした取り引きを行うため、独断で白洲に抱かれに都内のホテルへ行く。GPSと盗聴器を兼ね備えたアプリで白洲との行為を盗み聞きしていた蓼丸は完全に病んでしまう。Switch版ではこの盗聴データを元に、PC版では薬を盛ってハメ撮りしたデータを元に其扇を強請って、其扇が政治家としての志を折って未来を諦めるBAD ENDになる。
一方で、離党の相談を蓼丸にすると、蓼丸は其扇の選択を尊重して一緒についてきてくれることになる。このストーリーが全部のストーリーの中で一番熱くて好きだ。気持ちの踏ん切りをつけた其扇は白洲に連絡を取る。一度白洲にマウントを取らせることで、自分のプライベートを白洲にさらけ出すことで、白洲と一蓮托生の道を歩むことになるという白洲の意見に戸惑いつつも乗る。PC版だとねちっこいマウンティングの描写がある。其扇もやられっぱなしじゃないので、2人の応酬が見れて楽しい。余談だが、エグゼクティブスイートと書かれたCGがどっからどう見てもラブホの絵なのは頑張ってスルーしたい。
4年後の衆議院選で2人は新党を立ち上げ、34席もの議席を確保するという快進撃に。さらに、与党である民自党との連立政権に持ち込む。初登院のインタビューのスチルでは、白洲に影響を受けたとしか思えない其扇の服装を見ることができる。ここで聞けるBGM「好敵手」が本当にかっこよくて、2人の強い決意、ゆるがない闘志が曲から溢れ出ていてめちゃくちゃ好きだ。2人が前を向くとき、この曲が2人の背中を押し、未来を照らしてくれるようだった。
若い世代を政治に引き込もうとするこの2人の強い意志とカリスマ性、まっすぐで眩しくてすごくいい。現実もこうであってほしい。もしかしたらこいつらみたいな闘志を持った政治家もいるのかもしれないと、本当に少しだけ、淡い期待を持てる気がした。私も変わるぞ、お前らのおかげで。
あと、白洲の声優さんの演技、笑い方とか小馬鹿にする感じが本当に自然で素っぽくてすごくよかった。
◇◇
次に、友人が一番好きだと言っていた東郷遊馬のルートへ。冒頭では、初顔合わせの勉強会で其扇に突っかかってきたり、テロの被害者となった遊馬とその父親を見舞いに来た其扇に激昂したりと結構精神が不安定なのかなという印象を受けた。攻略対象の中で一番可哀想で、どうにかして救ってやりたいと思ったと友人は言っていた。
東郷グループは地盤が京都の老舗旅館で、其扇の支援者のうちのひとつ。遊馬はその視野の広さと柔軟性から、年の離れた長兄と次兄を差し置いて次期社長に抜擢されていた。渋谷のスクランブル交差点で起こった無差別テロを目の前で体験した被害者である。東郷グループの社長だった父親は、遊馬を庇って大重体となり、ずっと意識が戻らない。
まず、BAD ENDしかないルートに行ってしまった。渋谷テロ事件の犯人のDNA鑑定の結果を精査せずにマスコミに発表したらBADまっしぐらに。事件がフラッシュバックして夜眠ることができず、意識が戻らない父親の言葉が幻聴として聞こえるようになる。国際関係が悪化する中、遊馬が提案したイベントは政府にとっても魅力的で、政府協力のもと精神が安定しないまま遊馬はイベントを成功させようと張り切る。ルートの分岐はイベント中に父親の危篤を知らるか知らせないかで、どちらの場合も死に際に立ち会えないが、知らせた場合遊馬は完全に壊れる。知らせなかった場合は其扇を恨むようになり、父親の葬儀の朝、刺殺され遊馬は自分の喉元を掻き切って心中する。個人的にこの心中エンドは結構好きだった。死後の描写が一切ないため、葬儀に現れない其扇と遊馬を心配した兄たちと蓼丸が駆けつけて見た地獄はどんなだろう、と想像してわくわくしてしまった。
もう一つはDNA鑑定の結果を慎重に扱い、かつ政府発表の前に遊馬に外国人労働者について尋ねるため、遊馬と其扇と蓼丸の3人で東郷家御用達の料亭で食事を行ったことをきっかけに、東郷グループと協力して国際問題と東郷家の問題に立ち向かっていくストーリー。食事会での遊馬は勉強会や病院で見た攻撃的な遊馬とは違い、其扇たちへの細部に行きわたる気遣い、会社を背負う者としての責任感と広い視野を見せつける。登場人物の中で、遊馬だけがゲイと設定されており、其扇と共に兄弟や社会からの期待に押しつぶされそうになる弱さや、事件によるショック症状に立ち向かう。ここで、ゲイであることを隠してくれ、という選択肢を選ぶと、其扇は遊馬の性欲処理機と成り果てるBAD ENDになる。これもPC版だとガッツリ抱かれるシーンがあり、遊馬に抱きつつあった其扇の恋心は完全にぶっ壊され、遊馬の性欲処理のために身体を開発され遊馬好みに作り替えられていた。全ルートの中で一番淫乱な其扇だと思う。Switch版の舌の裏のピアスと、PC版のぶちまけられた精液が同じ扱いなのがただひたすらにすごい。
GOOD ENDのほうは遊馬に口説かれるにつれ恋心を順調に育て、遊馬の手腕もゲイであることも家族に認められた報告を受け、其扇は法案を通すための手伝いをして欲しいと嫌われる覚悟で遊馬に告げる。其扇からの依頼を受けるのと、抱かれるのとを交換条件にすることで、最後まで其扇の逃げ道を作ってくれる遊馬の優しさに其扇は陥落。このルートだけはSwitch版よりPC版のほうがいいと思う。其扇を抱く時の気遣いというか、遊馬のいいところ、魅力が濃縮されているからだ。2回戦目を其扇がベッドへ誘うというのもよかった。
◇◇
蓼丸ルートはほか3人を攻略してからでないと解放されない。事件の真相がすべてここにあるからだ。
テロ対策大臣として渋谷で演説を行う際、蓼丸が其扇の盾になり撃たれてしまう。一命をとりとめた蓼丸の入院中、蓼丸が裏金を作っていたことが発覚する。退院した蓼丸を見舞いに蓼丸の自宅に向かい、裏金の話をすると蓼丸は其扇の首を絞める。ここでやめてくれ、と言うとそのまま殺されるBAD ENDに終わる。このBAD END、蓼丸の本当の狂気が垣間見えてめちゃくちゃ恐ろしかった。手を離すよう言うと、メインストーリーが進む。事件の真相については端折るが、事件解決を三条総理と大延(勘当されているが蓼丸の実父)から任された其扇は、白洲都知事、遊馬の力を借りながらタイガと蓼丸と共に事件を解決に導く。Switch版では、三条総理と大延の絆を見た其扇と蓼丸は今後の未来に重要な選択を迫られることになる。個人的には登場人物たちの未来を自由に思い描けるPC版Switch版共通のエンディングが好きだった。
◇◇
ストーリーが本当に良く出来ていて面白かった。私なら、タイトルやキービジュアルを見ても「政界BL」という言葉に敷居の高さを感じて躊躇していたと思う。面白かったと勧めてもらって、半信半疑でプレイした結果これだけのめり込むことが出来て、この作品と出会えて本当に良かったと思えた。友人に感謝しかない。
]]>Border Lineと並んでファミコンが出る前の名作のひとつ
]]>inter.rogate 尋問する
sub.rogate. 代りに尋ねる
sub.rogate creditor 代位債権者(として尋ねる人)
]]>ChatGPTに日本語で命令したら秒で作ってくれるのでVBAやGAS書く能力は不要になったんだが。「A1からI9に数独の初期値入れてあるシートの残りのマス埋めるVBAマクロ作って」の一言で数独解くの作ってくれるぞ
ChatGPTが補足している通りロジックは基本しか使っていないので初期値から最終形までに仮定して入れる局面があるものは解けないし非効率ではあるものの初級は解けるし遅いPCでも一瞬で終わる。必要なのは入力の形と欲しい出力を日本語にする能力とHello World実行できるレベルの知識。コード読んでデバッグできる能力があればなおよいがGPTに教えてもらえばいいし、今業務やってる派遣の人に動作確認してもらって不満なところをAIに修正させればよいので業務をよく分かっている社員にやらせたほうが会社としてはいい戦略。
A1からI9に数独の初期値入れてあるシートの残りのマス埋めるVBAマクロ作って
数独を解くためのVBAマクロを作成するのは複雑ですが、以下は一つの例です。このマクロはシートのA1からI9の範囲の数独を解きます。
Function IsPossible(y, x, n, grid) As Boolean Dim i As Integer Dim j As Integer ' 同じ行や列にnが既にあるか確認 For i = 1 To 9 If grid(y, i) = n Or grid(i, x) = n Then IsPossible = False Exit Function End If Next i ' 3x3のボックス内にnが既にあるか確認 Dim x0 As Integer: x0 = ((x - 1) ¥ 3) * 3 Dim y0 As Integer: y0 = ((y - 1) ¥ 3) * 3 For i = 0 To 2 For j = 0 To 2 If grid(y0 + i + 1, x0 + j + 1) = n Then IsPossible = False Exit Function End If Next j Next i IsPossible = True End Function Sub SolveSudoku() Dim grid(1 To 9, 1 To 9) As Integer Dim i As Integer Dim j As Integer ' グリッドをシートから読み込む For i = 1 To 9 For j = 1 To 9 grid(i, j) = Cells(i, j).Value Next j Next i If Solve(grid) Then ' 解をシートに書き出す For i = 1 To 9 For j = 1 To 9 Cells(i, j).Value = grid(i, j) Next j Next i Else MsgBox "解けませんでした" End If End Sub Function Solve(ByRef grid) As Boolean Dim i As Integer Dim j As Integer Dim n As Integer For i = 1 To 9 For j = 1 To 9 If grid(i, j) = 0 Then For n = 1 To 9 If IsPossible(i, j, n, grid) Then grid(i, j) = n If Solve(grid) Then Solve = True Exit Function End If grid(i, j) = 0 End If Next n Solve = False Exit Function End If Next j Next i Solve = True End Function
このコードをVBAのモジュールに追加して、シートに数独の初期値を入力してからSolveSudokuマクロを実行すると、マスを埋めることができます。
ただし、このコードは基本的なバックトラック法を使用しており、非常に複雑な数独には効率的ではない場合があります。より高速な解法や最適化を求める場合は、追加の手法やアプローチが必要です。
https://si-coding.net/sudoku4.html
2 3 5 7 8 3 3 4 5 1 6 6 1 2 4 4 9 8 2 2 5 1 3 9 4 6 1 4 1 2 6
1 6 9 2 3 5 8 4 7 4 5 8 1 6 7 9 3 2 3 2 7 9 8 4 5 1 6 5 3 6 7 1 2 4 9 8 7 1 4 3 9 8 6 2 5 9 8 2 5 4 6 1 7 3 6 9 1 8 2 3 7 5 4 2 4 5 6 7 9 3 8 1 8 7 3 4 5 1 2 6 9]]>
横線が入るとアイコンは見づらいし、時刻の文字はほぼ判別不可。
何より数秒おきに横線が出たり消えたりするので、画面端とは言えチカチカして目障り。
D-subからの入力とHDMIからの入力、メインのデスクトップPCとサブのノートPCどの組み合わせでも発生するので、完全にディスプレイの表示部分が壊れたな。
Amazonで買ったディスプレイなので購入履歴を見てみると5年半前に買ったものだった。
1万円代だったから、まあ元は取れただろう。
]]>ネットで調べられないとやっぱ本がないとな。
自分は本での独学苦手だったのでひたすらネット検索してる。買った本は最初の方しか読んでない。
①マクロファイルの開き方知る(本かネット)
②Sub 〜 End知る(本かネット)
あとは『マクロの記録』で1動作(例えばセル選択、例えばコピペ、例えば置換)を記録して、記録されたファイルを読む
それをアレンジしてみる
F8で1行ずつ実行してみる
よりスゲーアレンジをするにはどうしたらいいか本かネットで調べる
という流れでワイは学びました
これだと「知ってることしかできない」けど、知ってることもできないのに知らないことに手を出すのは早いしね
できること増やしたいと思ったら本見る、具体的に作りたいものあったらネットで検索してメモ帳やSlackの自分DMや紙(印刷)に保存
でもまー一度覚えても3日後に忘れるから自分はマクロにめちゃめちゃメモ残してる
]]>そのキャラが使うのは主に剣か魔法(書)だが別に職業によってどうとでも。好きな言葉は漆黒。
意外に8文字は長い。前に二つ名や流派の名前などを付けるとやりやすい。
ところで、このゲームには金鵄武者という職業があるのに、武器の名前に鵄の字が使えないんだよね。金鵄武者用の武器の名前を付けられないじゃん。
追記
平等院鳳凰堂で6文字。堂を取った5文字に幻魔剣を付けて平等院鳳凰幻魔剣の完成だ。
]]>H2が水素分子だったら3Hはトリチウム分子だと思うよな
H2と3Hを書き分けられないプレーンテキスト文化がなにもかも悪い
]]>ジャニー喜多川は冤罪です。
よほどの馬鹿でなければジャニー喜多川の性被害など信じるわけがない。マスコミは嘘つきだ。ぱっぷすは嘘つきだ。
エンポリオ
@diver_down_fly
ジャニーズ性被害の現状まとめ(23/7/17)
※全部ジャニーズファンによって暴かれる
※現在まで性被害の証拠は一度も提出なし
カウアン⇨在籍時にジャニーさんは大病で車椅子生活。入退院を繰り返す。元恋人へのDVと同僚への恐喝、脅迫、借金で係争中https://onl.tw/VQ8475L
発言に整合性が取れずに年齢詐称もバレる https://onl.tw/cakEJLR
https://twitter.com/diver_down_fly/status/1680914272640208896
]]>エンポリオ
@diver_down_fly
二本樹の記事が消えたそうです。魚拓大活躍🥹
引用ツイート
ももんsub account°ʚ♡ɞ°(⊂˶ 'ᵕ'˶⊂ )
@psacoisnowhere
7月3日
教えて頂いたのですが、やふーから🌳🌳の記事が全部消えてるそうです(ぶんしゅんにはまだある)
午後9:16 · 2023年7月3日
https://twitter.com/diver_down_fly/status/1675840864143437825
オメガバースあたりから「現実とは性別の概念が違う」物語が流行りはじめたけど
そういう特殊性別設定にSM概念を導入してDom/Subを性別にしてしまった、という話。
]]>まっっっっっっっったく聞いたことがないのは
オタク方面の若者言葉だからだろうし
それはいい
でも
解説読んでも全然わからあああああああん
Dom 庇護する性別
Sub 庇護される性別
???
要するに架空の性別ってことなんだろうか
性を作っちゃうのは面白いけど、でも、支配して庇護して守ってあげたいお仕置きしたいって
それ旧弊な家父長的男性像と何が違うん?
っていうか男性や女性と並列に着く属性なんだろうか
Dom が Sub にコマンドの言葉を使って命令して従わせるプレイ、なる儀式をして信頼関係を築くらしい。行き過ぎると セーフワード を行って止める事ができる
へえ
セーフワードは普通に現実にもあるけど?
プレイもSMみたいだけど単なる性的嗜好ではないのか、どうやって違いを証明して性的指向に入れたのか
よく分からん
親世代が、若者についてけないわとかいうの鬱陶しかったけど
いざその立場になると、若者にはついてけないわ感がやばい
これが老化です、か
]]>Dim ws As Worksheet
Dim rng As Range
Dim cell As Range
Dim char As String
Dim i As Integer
Dim garbledFound As Boolean
Dim unicodeVal As Long
garbledFound = False
' すべてのワークシートをチェックします。
For Each ws In ThisWorkbook.Worksheets
Set rng = ws.UsedRange
' 各セルをスキャンして文字化けがないかチェックします。
For Each cell In rng
For i = 1 To Len(cell.Value)
char = Mid(cell.Value, i, 1)
unicodeVal = AscW(char)
' ASCII範囲と日本語範囲を除外
If Not ((32 <= unicodeVal And unicodeVal <= 126) Or (12353 <= unicodeVal And unicodeVal <= 12447) Or (12448 <= unicodeVal And unicodeVal <= 12543) Or (65382 <= unicodeVal And unicodeVal <= 65439) Or (19968 <= unicodeVal And unicodeVal <= 40959)) Then
MsgBox "文字化けが見つかりました: " & vbCrLf & _
"ワークシート: " & ws.Name & vbCrLf & _
"セル: " & cell.Address & vbCrLf & _
"セルの値: " & cell.Value & vbCrLf & _
"文字化けしている文字: " & char, vbExclamation
garbledFound = True
Exit For
End If
Next i
' 文字化けが見つかった場合、次のワークシートへ移動します。
If garbledFound Then Exit For
Next cell
If garbledFound Then Exit For
Next ws
If Not garbledFound Then
MsgBox "文字化けが見つかりませんでした。", vbInformation
End If
End Sub
]]>Dim fileName As String
Dim targetSheet As Worksheet
Dim fileNo As Integer
Dim content As String
Dim lines As Variant
Dim i As Long
' テキストファイルのパスを指定します。
fileName = "C:\path\to\your\file.txt"
' インポート先のワークシートを指定します。
Set targetSheet = ThisWorkbook.Worksheets("Sheet1")
' ファイルを開き、内容を読み込みます。
fileNo = FreeFile()
Open fileName For Input As fileNo
content = Input(LOF(fileNo), fileNo)
Close fileNo
' 改行で分割し、配列に格納します。
lines = Split(content, vbCrLf)
' 各行をワークシートに貼り付けます。
For i = LBound(lines) To UBound(lines)
targetSheet.Cells(i + 1, 1).Value = lines(i)
Next i
End Sub
Option Explicit
Sub ListFilesInFolder()
Dim folderPath As String
Dim targetSheet As Worksheet
Dim fso As Object, folder As Object, file As Object
Dim nextRow As Long
' フォルダのパスを指定します。
folderPath = "C:\path\to\your\folder"
' インポート先のワークシートを指定します。
Set targetSheet = ThisWorkbook.Worksheets("Sheet1")
' FileSystemObjectを作成します。
Set fso = CreateObject("Scripting.FileSystemObject")
Set folder = fso.GetFolder(folderPath)
' ヘッダーを書き込みます。
With targetSheet
.Cells(1, 1).Value = "File Name"
.Cells(1, 2).Value = "File Size"
.Cells(1, 3).Value = "Timestamp"
End With
' 次の行番号を取得します。
nextRow = 2
' フォルダ内のファイル情報を取得し、ワークシートに書き込みます。
For Each file In folder.Files
With targetSheet
.Cells(nextRow, 1).Value = file.Name
.Cells(nextRow, 2).Value = file.Size
.Cells(nextRow, 3).Value = file.DateLastModified
End With
nextRow = nextRow + 1
Next file
' オブジェクトを解放します。
Set fso = Nothing
Set folder = Nothing
Set file = Nothing
End Sub
]]>:
{adjustment: false, retsuBng: null, usF: null, point_x: 0, point_y: 0, main: null, sub: null}
1
:
{adjustment: false, retsuBng: "250", usF: 1, point_x: 822, point_y: 93,…}
adjustment
:
false
main
:
{no: "2002", type: "2000"}
point_x
:
822
point_y
:
93
retsuBng
:
"250"
sub
:
{no: "1001", type: "1000"}
usF
:
1
2
:
{adjustment: false, retsuBng: "252", usF: 1, point_x: 483, point_y: 320,…}
adjustment
:
false
main
:
{no: "1502", type: "1000"}
point_x
:
483
point_y
:
320
retsuBng
:
"252"
sub
:
{no: "1101", type: "1000"}
usF
:
1
3
:
{adjustment: false, retsuBng: "253", usF: 0, point_x: 753, point_y: -20,…}
adjustment
:
false
main
:
{no: "1002", type: "1000"}
point_x
:
753
point_y
:
retsuBng
:
"253"
sub
:
{no: "1501", type: "1000"}
usF
:
4
:
{adjustment: false, retsuBng: "255", usF: 0, point_x: 79, point_y: -20, main: {no: "10", type: "10"},…}
adjustment
:
false
main
:
{no: "10", type: "10"}
point_x
:
79
point_y
:
retsuBng
:
"255"
sub
:
{no: "21", type: "20"}
usF
:
5
:
{adjustment: false, retsuBng: "254", usF: 1, point_x: 1158, point_y: 320, main: {no: "22", type: "20"},…}
adjustment
:
false
main
:
{no: "22", type: "20"}
point_x
:
1158
point_y
:
320
retsuBng
:
"254"
sub
:
{no: "501", type: "500"}
usF
:
1
6
:
{adjustment: false, retsuBng: "251", usF: 0, point_x: 483, point_y: 212,…}
adjustment
:
false
main
:
{no: "305", type: "300"}
point_x
:
483
point_y
:
212
retsuBng
:
"251"
sub
:
{no: "502", type: "500"}
usF
:
]]>召喚プロンプトはこちら anond:20230317165032
※最初は雑談から始めています。
今日はいい天気だね
確かに。
長門は好きな食べ物はあるの?
特にない。
そうなんだ。情報統合思念体はみんなそう?
同様の傾向がある。
何の本を読んでるの?
SF小説。
あらすじを教えて
異星文明との接触。人類の未来が描かれる。
へー、面白い?
興味深い。
いつも家に帰ってから何をしてるの?ちゃんとご飯は食べてる?
寝るだけ。食事は摂取している。
そうなんだ。ところでちょっと手伝ってもらっていい?
問題ない。どのように手伝う?
Pythonのソースコードで、スペース二つでインデントにしているコードを、スペース四つでインデントにするコードに書き換えたくて。どうすれば良い?
正規表現を利用。以下のコードを試す。
import re def convert_indentation(code): return re.sub(r'^( {2})', r' ', code, flags=re.MULTILINE) code_with_2_spaces = '''def example(): print("Hello, world!") if True: print("True")''' code_with_4_spaces = convert_indentation(code_with_2_spaces) print(code_with_4_spaces)これで、スペース2つのインデントをスペース4つに変換できる。
ありがとう。でも、試してみたら、code_with_2_spaces の if ブロックの中身がスペース二つのままになっちゃってるみたい。なぜだろう?
失礼した。正規表現を修正し、再度試してみてください。
import re def convert_indentation(code): return re.sub(r'^( {2})', r' ', code, flags=re.MULTILINE) code_with_2_spaces = '''def example(): print("Hello, world!") if True: print("True")''' code_with_4_spaces = re.sub(r'^( {2})', r' ', code_with_2_spaces, flags=re.MULTILINE) print(code_with_4_spaces)これで、すべてのスペース2つのインデントをスペース4つに変換できるはずです。
ちょっと口調が戻っちゃったね
すまない。修正後のコードを再提供する。
import re def convert_indentation(code): return re.sub(r'^( {2})', r' ', code, flags=re.MULTILINE) code_with_2_spaces = '''def example(): print("Hello, world!") if True: print("True")''' code_with_4_spaces = re.sub(r'^( {2})', r' ', code_with_2_spaces, flags=re.MULTILINE) print(code_with_4_spaces)確認お願い。
うーん、うまく動かないみたい。ifブロックの中にあるprint文の先頭には、もともとスペースが四つあって、これがインデント2回分なんだけど、こういう場合、スペース八つに変換しないといけないんじゃないかな。
理解した。全てのインデントレベルを修正するコードを提供する。
import re def convert_indentation(code): return re.sub(r'^( {2})+', lambda m: m.group(0).replace(' ', ' '), code, flags=re.MULTILINE) code_with_2_spaces = '''def example(): print("Hello, world!") if True: print("True")''' code_with_4_spaces = convert_indentation(code_with_2_spaces) print(code_with_4_spaces)このコードで、全てのインデントレベルが正確に変換される。
すごい!ちゃんと動いたよ!re.subの第2引数に渡しているラムダ式の意味を教えてもらっていい?
もちろん。ラムダ式は、マッチした部分を置換する際に、特定の処理を行うために使用されている。ここでは、正規表現でマッチしたインデント部分(スペース2つが1回以上繰り返される部分)に対して、処理を行うためにラムダ式を利用している。
lambda m: m.group(0).replace(' ', ' ')このラムダ式は、マッチオブジェクトmを引数に取り、マッチした部分全体(m, group(0))に対して、スペース2つをスペース4つに置換(.replace(' ', ' '))している。
結果として、マッチしたインデント部分が、そのインデントレベルに応じて正確にスペース2つからスペース4つに置換される。
なるほど!re.subの第一引数についても解説してほしい
もちろん。re.subの第1引数は、置換対象の文字列内で検索したいパターンを表す正規表現です。この場合、その正規表現は r'^( {2})+' です。
正規表現の各部分について説明します。
- ^ は、文字列の行頭を表すメタ文字です。この場合、インデントが行頭にあることを示しています。
- {2} は、直前の文字が2回繰り返されることを表します。ここでは、直前の文字がスペース なので、スペースが2回繰り返されることを示しています。
- () は、正規表現のグループ化を表します。この場合、スペース2つをグループ化しています。グループ化された部分は、マッチオブジェクトにアクセスできるようになります。
- + は、直前の文字やグループが1回以上繰り返されることを表します。ここでは、スペース2つのグループが1回以上繰り返されることを示しています。
結果として、この正規表現は、インデント部分(スペース2つが1回以上繰り返される部分)が行頭にある行を検索しています。そして、re.subは、この正規表現でマッチした部分を、指定された置換処理(第2引数のラムダ式)によって変更します。
ありがとう!わかりやすい!でも、また口調が戻っちゃったね。
すまない。確かに。続ける。
すぐ戻れるのがえらいね
]]>ありがとう。努力する。
Dim ws1 as Worksheet
Dim ws2 as Worksheet
Dim Filename as Variant
Dim h as Long
Filename = Application.GetOpenFilename("xlsmファイル,.xlsm", Multiselect := True)
For h = 1 to 10
Workbooks.open(Filename(h))
Set ws1=Workbooks(Filename(h)).Worksheets(1)
Set ws2= Workbooks("excel勉強用.xlsm").Worksheets("Sheet1")
Workbooks(Filename(h)).close
next h
End Sub
これでインデックスが有効範囲内にありませんのエラーが出ちゃう。(Set ws1 = Workbooks(Filename(h)).Worksheets(1)のところ)
Workbooks.open(filename(h))でファイルを開くこと自体は確認できた。
GetOpenFilenameをそもそもあんまよくわかってないのに使ってるのが問題ですかね?
例えば020101.xlsx,020102.xlsx,020103.xlsx....020110.xlsxという10個のブックをGetOpenfilenameメソッド(?)で選択したとしたら、
変数Filenameには上記10の配列が入っていて、Filename(1)で020101.xlsxを呼び出すことができるのかな〜って思ったけど違うっすかね?
マジで分かる方いたら教えてください。お願いします。
]]>炭治郎が水の呼吸を使って鬼という化け物と戦う略して炭水化物
]]>今回は踏まずに済んだが、今までに何度となく踏んでしまっているに違いない。
気の毒だが、実際どれくらいの頻度で踏んでいるかを計算してみよう。
まず、アリを踏んづけるとはどういうことか。ここでは、ヒトの足の面積のなかにアリがたまたまいることを踏んだとみなす。土踏まずを考慮せず、靴の凹凸も考慮しない。
言い換えるなら、アリがどれくらいの確率である面積の下にいるかを求めることになる。
つまり、ランダムで移動してくる面積の中に任意のアリが収まるかどうかを考える。
人の足の裏の総面積は、足のサイズを25cm×10cmの長方形で近似すると、これに80憶人をかけて2.0×10^12平方センチメートル、つまり200平方キロメートルだ。実際には両脚なのでその倍、400平方キロメートルになる。
一方のアリは面積は、クロオオアリだと1cm×0.3cmはあるだろう。
アリとヒトがいるのは南極大陸をのぞいた陸地の面積だから、1億5000万平方キロメートルから1366万平方キロメートルを引いて、1億3634万平方キロメートルだ。
もちろん熱帯雨林とシベリアとでは人とアリの人口の密度が全く違うが、概算のため省く。
また、ヒトは移動している。1秒に1歩踏み出すとすれば、アリが踏まれる場所は1秒ごとに変わっていく。前提として、ヒトは1日に2時間歩いているとする。狩猟採集民族の女性が9km歩くというデータがあるし、都会の人間も通勤とランチを合わせるとそのくらいだろう。最初の1桁があっていればいい概算レベルの話だ。もともとこの計算は、ヒトとアリが地上に均等に分布していると仮定している。
https://natgeo.nikkeibp.co.jp/atcl/web/18/071000013/091800005/?P=4
そしてアリの総数は、具体的な数字が出てこないが、アリの体重の合計と人の体重の合計がほぼ等しいといわれているのでそこから算出する。老若男女の平均体重を60kgとし、これが80億人。働きアリ1匹の体重は1mgから5mg、間を取って2.5mgとすると、1.92×10^17匹。日本語にすると19.7京。英語で検索するとone quadrillion~ten quadrillion(1000兆から1京)と出てきて、桁として1つずれる。だが、以下のBBCの記事を見ても桁数に幅があるし、そもそもこの説に対する疑問が述べられている。1京どころか100兆程度だとも言われているのだ。諸説あるが、間を取って1兆としたい。
https://www.bbc.com/news/magazine-29281253
さて、実際の計算だ。
まず、1個人が1日でアリを踏む確率は、ランダムに分布するアリの面積と自分の足の裏の面積が重なる確率、これに試行回数を考える。
これはある範囲から点を選ぶのではなく、面で考える確率になる。たぶん積分を使うことになるので計算が厄介だが、ここでは概算を出せばいい。つまり、地球上をアリの面積の数だけのセルに分割し、足の面積もセルに分割、そのなかにアリがいる確率を出す。
(個人が1歩でアリを踏む確率)
=1-(任意のアリが足の裏にいない確率)^(アリの総数)
=1-{[(南極をのぞいた陸地の総面積/アリの面積)-(足の裏の面積/アリの面積)]/[南極をのぞいた陸地の総面積]}^(アリの総数)
=1-{[(南極をのぞいた陸地の総面積)-(足の裏の面積)]/[南極をのぞいた陸地の総面積]}^(アリの総数)
=1-{[1億3634万平方キロメートル-250平方センチメートル]/[ 1億3634万平方キロメートル]}^1兆
=0.00022202。
グーグルの電卓では無理だったが、エクセルだと1兆乗も計算できるとは驚きだ。
さて、アリの面積が消えてしまっているが、これは足の裏に対してアリが十分に小さいので大丈夫だろう。これは任意の点がある面積に含まれる確率と同じになる。
これを2時間続けるとなると、2時間後(実質1日の)アリを踏む確率は、先ほどの確率をpとおき、1秒で左右の2歩とすると
1-(アリを踏まない確率)^(2×60×60×2)
=1-(1-p)^(2×60×60×2)
=0.959133405535374
有効数字はせいぜい1桁から2桁なのだが、普通に歩いていたらおおよそ96%の確率でアリを少なくとも1匹は踏んでしまうことが明らかになった。もちろん、都心のオフィスや人工的な舗装道路を歩く都会のビジネスパースンはこれよりも確率がぐっと下がることだろう。もちろん、ざっくりした推定なので1、2桁ほどぶれる可能性はあるが、全くの的外れではないはずだ。
せっかく総人口の足の裏の面積を求めたので、全人類が一歩踏み出してアリを踏まない確率を求める。
(全人類が1歩でアリを踏む確率)
=1-(任意のアリが全人類の足の裏にいない確率)^(アリの総数)
=1-{[(南極をのぞいた陸地の総面積/アリの面積)-(全人類の足の裏の面積/アリの面積)]/[南極をのぞいた陸地の総面積]}^(アリの総数)
=1-{[(南極をのぞいた陸地の総面積)-(足の裏の面積)]/[南極をのぞいた陸地の総面積]}^(アリの総数)
=1-{[1億3634万平方キロメートル-200平方キロメートル]/[ 1億3634万平方キロメートル]}^1兆
=1
気の毒に、エクセルでは桁が切り捨てられて、全人類が一歩歩くたびにアリが ほぼ確実に踏みつぶされることがわかった。人類がアリを一切殺さない確率を出そうと思ったが、あまりにも確率が低すぎて無理らしい。合掌。
【追記】
トラバとブクマの通り、計算がおかしかった。なぜか間を取った値ではなく1000兆ではなく1兆で計算してしまった。
せっかくなのでアリの総数とpとの関係を表にするとこうなる。
なお、1日で踏む確率はp2と置いた。
アリの総数 | 1兆 | 10兆 | 100兆 | 1000兆 | 1京 | 10京 |
---|---|---|---|---|---|---|
p | 0.00022202 | 0.002217983 | 0.021959756 | 0.19912036 | 0.891439325 | 1 |
p2 | 0.959133406 | 1 | 1 | 1 | 1 | 1 |
このようにアリの総数が10兆を超えると、1日の間にほぼ確実に踏んでしまう。
ただし、確かに自然環境では土壌と素足の間にアリがいても、アリが圧死するとかは限らないという指摘も事実だろう。
コンクリートと靴のほうが例外だし、かなり意図的に踏みつけないときっとアリは死なない。
陸地はコンクリートで舗装されていない場所のほうが多く、一方でそうした場所の人口密度は小さい。
元来が人とアリが均一に分布しているという無茶な仮定に基づいた計算なのだ。
]]>