Excel VBA 質問スレ Part53
レス数が1000を超えています。これ以上書き込みはできません。
ExcelのVBAに関する質問スレです
コード書き込みや作成依頼もOK
※前スレ
Excel VBA 質問スレ Part52
http://mevius.5ch.net/test/read.cgi/tech/1517052305/ >>904
あれはもう持ってるんだ
派遣先で永遠と飛んでくる指示に従うだけって思ってたよりもつまらん >>925
そりゃあ指示にただ従ってるだけではな
仕事は自分で作り出すものやで 組織に所属しているという意識がないんなら当然「仕事は自分で作り出す」なんて意欲も湧かんわw 勝手に仕事を作るバカのせいでまたメンテナンスコストの高いマクロがばら撒かれる
無能な働き者さんはほんと迷惑です >>925
(誤)永遠と
(正)延々と
わざとならすまん オブジェクトをコピーした状態を解除するにはどのようにかけばよいでしょう?
Application.cutcopymode=false では消えないので、適当なセルを一度コピーし上記でコピー解除しています。
一発で解除する方法ありますか? >>932
APIのEmptyClipbordはどう? 検索したらクリップボードをクリアするサンプルコードがでてくるはずだけど、api呼び出す必要があったり結構面倒だった記憶がある C#とかでクリップボードをクリアする実行ファイルを作って呼び出すのが最適解 >>932
CreateObject("Forms.TextBox.1") して空文字をコピーすりゃいいじゃん、と思ったけど空文字だとできないな。
任意の一文字コピーではだめ? Dim xls As New Excel.Application
Set Book = xls.Workbooks.Open(省略)
時短のためにこのように作業対象のオブジェクトを取得すると
Book.activate
が効きません。(常にthisworkbookがアクティブになります)
何故でしょうか?対策はございますか? >>937
あんまり詳しくないけど新しいエクセルを作成する必要あるの?
dim book as workbook
にして
setのところのxls.を削るのはダメなの? >>933
上手くいきました。
>>936
ありがとう >>938
それだと普通に開くだけなので大量のエクセルファイルを操作するときに時間がかかるのです 新規にEXCELプロセス作った方が速いって言ってる? >>940
時間がかからんとactivateしても人間にはなんの事やらわけがわからんよ
キミはなんや矛盾した問題をかかえとるね 大量のファイルを処理するならプロセス作って並列処理した方が速いだろうね 質問です。
windowsAPIからキーボードイベントを発生させたいのですが、ノートパソコンにあるFNキーの定数をご存知の方いらっしゃいませんか。
よろしくお願いします。
>>937
開いているブックのみがアクティブの対象かと。 何故アクティブにする必要があるんかね?
アクティブにしないで済むようには組めんのか?
基本的にアクティブにする処理を書く奴はスキルが低いと思うんだ。
もっとも、どうにもアクティブにしないとできないことも稀にはあるけどね。 >>944
残念ながらFnキー単体にコードはない
Fn+キーが押されて初めてデバイスからコードが流れる仕組み
つまりFn単体が押されたかはOSからは判らない
メーカーによっては違う仕組みかもしれないけど 明示的にアクティブにすることはある。
ユーザーにこのシート、このセルですよと示す為に。
でもそういう場合以外でアクティブにすることはまずめったに無い。
で、Excel.Application使う場合はそういう場合ですら無い。
2013だったかのExcelの仕様変更でアクティブにしないとエラーとなる不具合が有った気がするが回避できる組み方も有るような気もする。 >>946
ありがとうございます。
>メーカーによっては違う仕組みかもしれないけど
再び希望を持ってかなり調べてみましたが、やはり仰る通りありませんでした。
別の方法を探すことにします。 スレ違うかもしれないけど教えてください。
この問題答えがイ.なんだが最後に+1を付ける意味がわからないんです…
付けなきゃいけないの?https://i.imgur.com/EH5gABg.jpg 表のつくりがクソだという以外に感情がなくなってきて答えられない 表示とデータを分離しない
データを正規化しない
vbaerあるある
やんなっちゃうよね >>950
開始時間を表示したいんなら+1不要だと思うよ
問題文はそうじゃないね 何のテキストか知らないけど下に見えてる問題も含めて地雷くさいなぁ
関数複雑にする前にできることあるだろうに… ふと思ったのだがもしかしてプログラミング必修って
純粋な子供たちにこういうのが正しいプログラミングですって教え込むのかな
こわいなぁ なにがこわいんだよ
VBAみたいなしょーもないことやるわけちゃうやろ 中途半端な知識に毒された新人やお客様は厄介だぞ
新人は研修で厳しく指導して矯正すればまだなんとかなるが、お客様が相手だと立場上そうもいかん
恥をかかせないように間違いを指摘するのって難しいんだよ >>950
空白はINDEX関数の何行目かを指定するのにMATCH関数を用いていて、A3に一致した行+1することにより活動場所の行にずらしています。
もう一つのMATCH関数によりA4に一致した列を指定していることで、D4に正しく表示されるようになります。
それぞれを数字に直すとより分かりやすいかもしれません。 ttp://mevius.5ch.net/test/read.cgi/bsoft/1523701626/411 StrConv関数のシステム規定のコードって、WindowsならShift-JISでいいんですか?
もしそうなら、それが明示的にわかる記述ってヘルプなどに乗ってますか? システム規定?
何か勘違いじゃない?
StrConv関係なくダブルクォーテーションで括った文字はShift-JIS扱いだと思うが。 >>960
> StrConv関数のシステム規定のコードって、WindowsならShift-JISでいいんですか?
それを質問してるレベルならShift-JISだと思っておけばいい
> もしそうなら、それが明示的にわかる記述ってヘルプなどに乗ってますか?
世の中には英語版Windowsとかもあるから規定のコードはShift-JISとは限らない ファイルが閉じられようとしている時、何がそのファイルを閉じようとしているか取得することはできますか?
MenuなのかCloseBoxなのかShortCutKeyなのかプログラム的なものなのか。
Application.Callerで行けるかなと思ったのですが、無理でした。 >>963
API使ってイベントを監視すれば可能だけどVBAの範疇を超えすぎてる 僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
8JKSW webスクレイピングて難しく思えたんだけどコレはvba以外でやると多少楽なのかな?
静的ページならすぐ出来たけど動的インフレームアリだとsetが失敗して、しないようしないようと作ってたらかなり時間かかるようになってしまった >>968
そんな事を何故にエクセルでやるの?
WinアプリとかWebアプリを作るとかした方が良いのでは? スクレイピングにVBAを使う人がいても良い
それが自由というものだ WinSockでWebサーバ作るの難しく思えたんだけどVBA以外でやると多少楽なのかな? スクレイピングは、Ruby で、Mechanize, Selenium WebDriver
CSS セレクターのNokogiri は、jQuery と同じ >>969
それは俺がvba以外業務経験の無い似非プログラマーみたいな人材で社内向けの便利ツール開発屋さんだからだ
あとはexcelでログ蓄積してたりグラフ作ったりWordで資料作るって言うからボタン一個でスクレイピングから資料作成まで出来たら楽なんかなーそしたらvbaで良いかなーって >>973
それは俺も知りたい
htmlをテキストとして持ってきて表の部分を再構成したり、hrefタグにあるファイルをダウンロードしたりはやってるけど、
それ以上のことが出来ない。
まずはWebプログラミングの基礎をちゃんとやんなきゃとは思ってはいるけどね。 簡単だよ
インスペクターを使ってブラウザとサーバーの通信内容を分析する
分析結果を応用して目的のサイトを巡回して、生のコンテンツを収集するクローリングプログラムを作る
収集したコンテンツから装飾などを取り除き、必要なデータ部分のみを抽出するスクレイピングプログラムを作る
抽出したデータを加工しRDBやドキュメントストアに保存して、データを再利用しやすくするインデクシングプログラムを作る
クローリング、スクレイピング、インデクシングの実行をスケジューリングするプログラムを作ってサービスに登録する
検索、統計計算、レポート作成など、インデクシングしたデータを活用するプログラムを作って、自分で使ったり、社内に配布したりする
対象のサイトの仕様変更やクローリング拒否の兆候を監視して、動きがあれば迅速に対応する
こういう基本的な部分は言語は関係ない 無駄が多すぎる
それに元の質問はvbaでも出来たけど他言語はもっと簡単なの?だろ
どの言語も出来るってのは質問者も分かってそうだけど何が伝えたいんだ 使わなくても良いカタカナ語を連発するあたりに無能さを感じる プロさんが事務員相手に無双したがるのてどうゆう心理なん? 事務員さん相手だと当たり前の基本を述べただけで無双になってしまう うんうん。プロの選手が草野球にアドバイスしてるのと同じだよね。 アドバイスっていうのも違うかなぁ
ペダルを漕いだら自転車が前に進みますって当たり前のことを呟いた感じが近いかな >>985
プロと言っても実際は開発部隊から外されて運用監視ぐらいしかしてない人たちだろうね。
メイン作業はキッティング程度だろw 親切ならWebアプリやWinアプリを進めておしまいだろ
そんなんサンプルがいくらでもある古典的な事をVBAでやる意味が分からん
簡単な事をわざわざ難しくするバカって多いよね >>982
事務員かて当たり前の基本ぐらいしっとるわw
そんなんで無双しとるつもりやったんかw >>989
基本的なことを呟いただけのつもりで無双した覚えはないんだが
それを無双してるって言う人がいたというだけだな
VBAerさんって普通のプログラマと比べてちょっと感覚が個性的だから噛み合わないことが多いね 普通の「プログラマ」は VBAスレなんて来ないよ。
使わないからね。
運用監視とかヘルプデスクとか呼ばれる職種の人だろ、エンジニアでこんなところ来るのはw 適材適所だからほかの言語と比較する意味はあまりないが
こういう言語で数万行に及ぶコード書く人って頭のなかどうなってるんだろう
記憶力が並外れてるのか、特殊な訓練でも受けていたのか。。。
で、それをコメントもマニュアルもなく投げられて炎上案件まっただ中
OOPからこの世界入った人にコード読みのこつ伝授してくだしぃ。。。 自分の場合はとりあえず全部exportして1ファイルにしたな >>993
わかってる人かw
モジュールっつーの?あれが30以上に分かれてて
しかも微妙に違うバージョンがいくつもあるから、exportのためのマクロ最初に書いたわ exportしてバージョン管理するのは基本中の基本 >>992
OOPじゃないけど言語としてはVB6だから数万行程度は普通に組めるだろ
> で、それをコメントもマニュアルもなく投げられて炎上案件まっただ中
それはお前んところの問題で言語関係ないし >>991
プログラマでも来るよ
別に情報を拾いに来るわけじゃない
基本的には遊びに来てるだけ
時には事務員さんに答えられない脱初心者以上の質問に答えてあげてるけどもね >>997
「普通」のプログラマはそんなに暇なのか?
それとも普通じゃないのか?w >>999
組めると言うだけで、組む必要があるかどうかは別の話な
お前さんに理解できるかどうかは知らんけど w このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 28日 22時間 7分 17秒 レス数が1000を超えています。これ以上書き込みはできません。