X



Excel VBA 質問スレ Part56
レス数が1000を超えています。これ以上書き込みはできません。
0002デフォルトの名無しさん垢版2018/08/23(木) 07:27:46.16ID:AvT0Y0lS
>>1
0003デフォルトの名無しさん垢版2018/08/23(木) 08:14:37.79ID:bUr0Kcqf
昔、JAVAでレイアウトというのを初めて知った時、何でこんなゴミ屑な仕組みになってんのと思ったことが有った。
Web系なんかではサイズが変わることが多く、それでレイアウトが崩れることがあるからなんだろうなと思ったが、Excel上で必要になったことは一度も無いや。
0004デフォルトの名無しさん垢版2018/08/23(木) 08:42:36.29ID:kThmoP0z
エクセルでFormという時点で、あっこいつエクセルが何のツールかわかってないな、一緒に仕事したら大変そうだな、と思われそう
0006デフォルトの名無しさん垢版2018/08/23(木) 11:02:04.08ID:neL0YzB6
エクセルで仕事ですか?
エクセルってメモ帳みたいなですよね?
あんなオモチャで仕事させられたらバカだと思われますよ
0008デフォルトの名無しさん垢版2018/08/23(木) 11:54:21.34ID:azcqrZDb
ここに来てわざわざそんなこと言う人間はExcelに精神を削られた経験でもあるんだろうよ。
0009デフォルトの名無しさん垢版2018/08/23(木) 12:15:55.01ID:neL0YzB6
削られるも何もエクセルなんてインストールもしてない
必要ないじゃん
いつの時代に生きてるの?
googleスプレッドで問題なし
0011デフォルトの名無しさん垢版2018/08/23(木) 12:21:37.83ID:bUr0Kcqf
世界で一番仕事で使われているソフトウェアを使わない選択肢も有るよな。
そんな会社とは付き合いたくないが。
0012デフォルトの名無しさん垢版2018/08/23(木) 12:24:53.48ID:JvbJckIq
何のためにわざわざこのスレに来てそれを言わなければならないのか、
についての悲しい物語
0013デフォルトの名無しさん垢版2018/08/23(木) 12:36:38.56ID:mnxNa0AO
世の中にはエクセルに異存せずにクリエイティブな仕事をしてる人はたくさんいるよ
毎日エクセル事務作業ばかりやってると想像できないかな?
0014デフォルトの名無しさん垢版2018/08/23(木) 12:53:45.47ID:iNuWULI+
>>13
> 世の中にはエクセルに異存せずにクリエイティブな仕事をしてる人はたくさんいるよ
そういう人たちはこんなスレを覗かないだろ w
0015デフォルトの名無しさん垢版2018/08/23(木) 12:53:52.04ID:neL0YzB6
マジでエクセルなんて必要ねー
つかエクセル形式でなんて言われたこともない
メモ帳だろ?
0016デフォルトの名無しさん垢版2018/08/23(木) 12:55:20.85ID:VIt1epE4
それは良かったね。
で、ここはExcelを便利に使おうとする人が集まるスレ。他ツールの話がしたい人は余所でやってね。

邪魔が入ったけど、、PSコードをExcelから呼ぶときはどうしてるの?
VBAから呼び出し?
0018デフォルトの名無しさん垢版2018/08/23(木) 18:28:38.62ID:bUr0Kcqf
>>17
全然困らないから良いよ。
ごくごく稀な、PC使わないような会社とは業種がまるっきり違うんでね。
0020デフォルトの名無しさん垢版2018/08/23(木) 18:54:08.74ID:b+vV9Eld
ビジネス界の常識って話ならそれで良いのに
技術的に比較しようとするから荒れる
0021デフォルトの名無しさん垢版2018/08/23(木) 19:02:27.29ID:RN48dlFj
で前提条件は変わったの?
エクセル以外は何もインストールも出来ない特殊な環境で働かされてる人向けってのVBAだったよね?
そんな人は極少数とか言ってたやつ
極少数の人しかVBAって使ってないの?
0023デフォルトの名無しさん垢版2018/08/23(木) 20:16:31.88ID:1ATD5kR7
世間にこれ程エクセルコンプレックスを持ったパソコン博士が居ったとは
正直驚いている
0024デフォルトの名無しさん垢版2018/08/23(木) 20:45:49.20ID:woFPjL3r
>>21
そういう極限状態ですらPowerShellという強力なライバルがいる
VBAはもはや本気でビジネスに活用するような言語じゃない
もちろんPowerShellがなかった、あるいは普及してなかったXP時代だったらVBAもビジネスで通用した
でも今はもう便利な道具が揃ってる
0027デフォルトの名無しさん垢版2018/08/23(木) 22:33:07.38ID:mr/xvEY6
うちの会社ではPowerShellがデフォルトでは使えないだけど、作ったものは動かせるのかな?
0029デフォルトの名無しさん垢版2018/08/23(木) 22:42:09.05ID:EIhBcxjq
>>28
同じ会社かもしれないだろ、お前の会社のことを言えよ
0030デフォルトの名無しさん垢版2018/08/23(木) 22:42:39.62ID:VIt1epE4
で、とうやってExcelとPS連携するの?
PowerShell押しの人、ノウハウ教えて。
(普段はVBAだけど固執するつもりはないので)
0031デフォルトの名無しさん垢版2018/08/23(木) 22:47:42.13ID:SlWSkCRM
>>29
ここはVBAのスレであってPowerShellのスレではない。
お前、字も読めないバカ?
0032デフォルトの名無しさん垢版2018/08/23(木) 22:51:44.59ID:EIhBcxjq
>>31
だったら最初からPowerShellのことをここで言われてもなと言えよ
会社がどうとかふざけたこと抜かしやがって
0033デフォルトの名無しさん垢版2018/08/23(木) 22:52:11.76ID:EIhBcxjq
PowerShellもここで良いだろ逆に
0034デフォルトの名無しさん垢版2018/08/23(木) 23:02:01.12ID:mr/xvEY6
>>28
それって会社によるのか?
PowerShell自体が使えない環境でも作ったスクリプトが動くなら
どこか1箇所だけ使える環境を用意してやれば済むんだけど。
0035デフォルトの名無しさん垢版2018/08/23(木) 23:11:41.91ID:VIt1epE4
>>31
ちげーよ、VBAとPSをどう連携できるのか聞いてんのよ。どっちがいいとかの雑談にはウンザリだけと、出来る範囲を広げるのはいいだろ?
なのでPS押しの人たちが普段どうしているか知りたいわけ。
0037デフォルトの名無しさん垢版2018/08/23(木) 23:31:56.28ID:dogWJKVx
Powershell利用のマルウェアが多いため、Powershellはセキュリティリスクという考えの社が多い。
やっと去年のWin10からかなり監査が出来るようになったので、今後は順次開放されるのではと思うが
0038デフォルトの名無しさん垢版2018/08/23(木) 23:32:50.94ID:XWjfkmKJ
PSめんどくさいんだよ
バッチファイルと同じで、なんか変なとこで管理者権限が必要だったりするから、
一般事務の子に「これダブルクリックしたらok〜」とか気軽に言えない
https://ledsun.hatenablog.com/entry/20120325/1332642151

何だかんだで気軽に扱えるのはVBSとvba
特にエクセル+vbaの相性が良すぎてサクッと使い捨てコード書くならこれ以外考えられない
0039デフォルトの名無しさん垢版2018/08/23(木) 23:40:01.25ID:qUZ5eK5Q
PowerShell(PS) で、Excel を起動して読み書きするとか、

PSで、データベースからExcelへ、データを読み込むとか
0041デフォルトの名無しさん垢版2018/08/24(金) 00:36:36.97ID:2VotvySN
>>27
動く

>>30
好きにすればいい
https://github.com/dfinke/ImportExcel
ここ充実してるので参考にするといい

>>37
んなこと言ったらVBAもなにもかもリスク
メールで気軽に送受信してしまう1ファイルVBAは比較的リスクが高いと言える

>>38
管理者権限は不要

>>39
VBAはブックに埋め込んでブックを開かないと動かせないから面倒くさい
0042デフォルトの名無しさん垢版2018/08/24(金) 05:48:18.65ID:xDm94xVe
VBAの最大のデメリットは
自分: プログラム書けます!
他人: C#? Java?
自分: .........

恥ずかしくてVBAだって言えない事
今時VBAってwww
0044デフォルトの名無しさん垢版2018/08/24(金) 07:30:56.58ID:bUYoJBbe
>>43
お前が言うな
0045デフォルトの名無しさん垢版2018/08/24(金) 07:50:15.08ID:g+y0M0OA
>>41
なるほど基本、外部から起動して一処理完結型の目的に使うイメージですね。ボタンやイベント駆動に割り付けるのではなく。
リンクありがとう。ちょっと覗いていろいろ遊んでみます。
0048デフォルトの名無しさん垢版2018/08/24(金) 08:14:56.26ID:RA0Vn5Gg
外部から起動するのがダメダメだろ。
それだったらどんな言語でもOK。
C#とかにするね。

昔、VBAからShellで別言語で作ったプログラムを呼び出して、そのプログラムが特定のテキストファイルを残して終了するまで待ってからVBAでテキストファイルを読み込むなんてかっこ悪いことしてたことが有るんだけどPowerShellも同じ匂いがするんだよな。
.netのフォームが使えるのは良いかもと思ったけど、ここでも同じ匂いがする。
VSTOの方がよっぽど良い。
0051デフォルトの名無しさん垢版2018/08/24(金) 08:17:17.16ID:iPiTj0p3
UI部品やイベントでゴテゴテに装飾したエクセルGUIを使う場面ってビジネス上そんなにないよね
0053デフォルトの名無しさん垢版2018/08/24(金) 08:41:40.00ID:HeVrgcXD
Powershell(またはバッチ),vbsは必須だろ...単なるファイル処理にVBA書く奴の気が知れん
0056デフォルトの名無しさん垢版2018/08/24(金) 08:48:03.57ID:RA0Vn5Gg
でもここはExcelVBAのスレなのでExcelが絡むのが基本。
そうすると他言語はどれもダメダメ。

Excelから起動出来ないとか、かっこ悪い匂いしかしない。
0058デフォルトの名無しさん垢版2018/08/24(金) 09:02:02.23ID:RA0Vn5Gg
>>57
バか?
Excel上で使うフォームのことを言ってるんだが。
そこに.netの高機能なフォームなんて必要無い。
0059デフォルトの名無しさん垢版2018/08/24(金) 09:05:39.56ID:PRwKDkO6
>>47
俺はexcelでやる作業を楽したいからVBA覚えたけど(関数覚えるようなものだし)、他のプログラム言語なんて大学生のときに教養の授業で少しやっただけで、必要なかったし、今後も全く必要ないと思う
0060デフォルトの名無しさん垢版2018/08/24(金) 11:47:05.80ID:DLTYmqpl
エクセルは多くの一般人に便利に使われている一方で、多くのプログラマに嫌われている言語ですね
0061デフォルトの名無しさん垢版2018/08/24(金) 12:27:48.07ID:RA0Vn5Gg
>>60
嫌われているのじゃなくて碌にプログラムが組めない奴、もしくは他言語の初心者が自分能力の低さが悔しくて憂さを晴らしやすいのがVBAなんだろう。
0062デフォルトの名無しさん垢版2018/08/24(金) 12:34:00.31ID:AkhzDIRR
PowerShellからインタラクティブにExcelいじるのが便利
VBAって対話的に実行できないんだよね
0066デフォルトの名無しさん垢版2018/08/24(金) 17:42:03.82ID:Ia7dcRVj
みんな好きな方法でやれよ。
外からのコントロールも覚えれば幅も広がるかな?勉強しよっと。
でも、Excel介さずにファイル操作するほうが効率的ってならこのスレに関係ない話だな。
全く関係ないスレで暴れてる人たちって何がしたいんだろ。
好きな方法で好きなことさせればいいのに。
0068デフォルトの名無しさん垢版2018/08/24(金) 18:47:05.36ID:Tb9uhLLL
流れを読まずに、、皆さんListObjectって使ってます? Oracleとかからクエリするとできあがるアレ。
2007あたりからの機能だと思うけど、慣れないから範囲に変換して独自のアクセス方法で使ってた。
もしかしてリストで表組みすればプログラムでスゲー便利だったりします?
ここが便利とか、こんな使い方があるよ、ってのがあったら教えてください。
0069デフォルトの名無しさん垢版2018/08/24(金) 19:14:05.46ID:eMTWpNIK
>>67
自分は作業をイミディエイトウィンドウでこなすことが多いんだけど、
あれって対話的インタフェースっていうもんなの?
0072デフォルトの名無しさん垢版2018/08/24(金) 19:29:26.52ID:zdXjL1Gc
イミディエイトウィンドウを対話的インタフェースってのは面白い言い方だな
ただ、あれは普通のコンソールとしか呼ばないと思う
0074デフォルトの名無しさん垢版2018/08/24(金) 19:45:02.42ID:n2aXOJxU
ここにいるVBAerってPSerよりVBA知識少ないみたいだな
ListObjectも知らないとかまじかー
0075デフォルトの名無しさん垢版2018/08/24(金) 20:39:07.26ID:zdXjL1Gc
>>74
そもそもテーブルをvbaで触ることがない
システムから吐き出されたデータをvbaで集計して、vbaで体裁整えて、vbaでファイル分割してコピーして、vbaで所定のフォルダに入るようにして終わり
ListObjectとか頑張って使う人は結構たいへんな環境だと思う
0078デフォルトの名無しさん垢版2018/08/24(金) 21:00:09.88ID:eMTWpNIK
>>70
なんで?
環境を整えればワンライナーでガシガシいけるyo!
0079デフォルトの名無しさん垢版2018/08/24(金) 21:24:35.45ID:2VotvySN
>>78
指定フォルダを再帰的に検索してファイル名が*.csvにマッチするCSVファイルを列挙
各CSVからX列, Y列, Z列を読み取ってD := (X^2 + Y^2 + Z^2)^(1 / 2)を計算する
Dの大きい順に並び替えてX, Y, Z, Dを新規Excelブックに出力して
出力した全行をテーブルレイアウトに変更する

例えば↑のような処理があったとしてイミディエイトのワンライナーだとどういうコマンドになるの?
0080デフォルトの名無しさん垢版2018/08/24(金) 21:29:18.23ID:H0CBQlWs
ぼくが考えた目一杯難しいプログラムみたいでワロタw平和やなあw
0082デフォルトの名無しさん垢版2018/08/24(金) 21:37:29.53ID:2VotvySN
>>80
え? VBAユーザーの感覚だとこの程度の処理が難しいの?

>>81
ファイルの検索、解析、整形、出力なんて日常茶飯事だろう
こんな典型的な基本パターンすらワンライナーで書かないならなにをワンライナーで書くんだよ
0083デフォルトの名無しさん垢版2018/08/24(金) 21:41:19.42ID:H0CBQlWs
マウンティングワナビー剥き出しのナイーブなレスでワロタw平和やのうw
0085デフォルトの名無しさん垢版2018/08/24(金) 22:02:01.47ID:bUYoJBbe
いやまあ向き不向きはあるでしょ
不向きなもの取り上げてダメだというのは自作自演ですよん
0086デフォルトの名無しさん垢版2018/08/24(金) 22:02:51.21ID:eMTWpNIK
>>79
ごめんなさいごめんなさいそれはワンライナーでは無理でした
実力もないくせにワンライナーとか言ってごめんなさい
0087デフォルトの名無しさん垢版2018/08/24(金) 22:03:18.60ID:bUYoJBbe
>>82
ちなみにPowerShellではどう書くんだい?
0088デフォルトの名無しさん垢版2018/08/24(金) 22:20:36.13ID:H0CBQlWs
なんやワナビーwせっかくのマウンティングチャンス見送ってまうんかw
0089デフォルトの名無しさん垢版2018/08/24(金) 22:36:32.96ID:eMTWpNIK
ごまんなさいオレには無理でした教えてください
そういう関数を作ってイミディエイトから呼び出せばそりゃできるけどそれじゃワンライナーとは言えないですよね...
0090デフォルトの名無しさん垢版2018/08/24(金) 22:45:50.22ID:2VotvySN
gci . -Recurse -Filter *.csv | % { ipcsv $_ } | % { $_ | Add-Member -PassThru -MemberType NoteProperty D ([math]::sqrt([math]::pow($_.X, 2) + [math]::pow($_.Y, 2) + [math]::pow($_.Z, 2))) } | Sort-Object D -Descending | Export-Excel -Now
0091デフォルトの名無しさん垢版2018/08/24(金) 22:47:49.25ID:zdXjL1Gc
>>90
うおおおおおおwwwwwwwwwwwwwww

って試してないけどそれっぽいから驚愕しとくぜ!
ってかvbaってそもそも
「提携業務の自動化」
がコンセプトだと思うんだけど、
そこにワンライナーを持ち出す意味がわからないぜ。やれるならすげー!って思うけど、エクセルのファミコンエミュみたいな大道芸と変わらん
0092デフォルトの名無しさん垢版2018/08/24(金) 22:52:49.94ID:eMTWpNIK
>>79
冷静に考えたら「新規Excelブックに出力して〜 」の部分を除けば
イミディエイトウィンドウ上のワンライナーでもいける気がしてきた
0093デフォルトの名無しさん垢版2018/08/24(金) 22:56:59.98ID:eMTWpNIK
>>90
ん?
X列, Y列, Z列ってなんの事だ?
0094デフォルトの名無しさん垢版2018/08/24(金) 22:58:35.81ID:2VotvySN
>>91
自動化はプログラミング言語共通の目的なので、VBAのコンセプトと言うにはビミョー

というか大道芸に見えるか?
ファイル漁って解析して整形して出力ってごく日常的な作業だから、大道芸でも何でもないし、
息吸って吐くみたいな作業をいちいちスクリプトファイル化したくないので、ワンライナーで書くんだよ
0096デフォルトの名無しさん垢版2018/08/24(金) 23:10:09.34ID:RA0Vn5Gg
何かPowerShellユーザーが哀しくなるようなレベルの奴が来てるな。

そんな簡単なものを自慢して何になるんだ?
PowerShellってのはそんなに使えないもんじゃ無いだろうに。

見た瞬間に組めると思うかどうかだよ。
簡単かどうかってのは。
ワンライナーかどうかは関係ない。
0098デフォルトの名無しさん垢版2018/08/24(金) 23:25:36.43ID:H0CBQlWs
まだマウンティング終わっとらんのかよw
最近はダラダラ時間ばかりかけて主旨のようわからんアホが多すぎるわ
0099デフォルトの名無しさん垢版2018/08/24(金) 23:49:03.30ID:2VotvySN
>>96
自慢に見えるならキミの潜在意識では、なんかすごいことやってるな、って感じてるってことだろうね
でもこの程度で自慢してるとか言われてもネ
呼吸することを自慢する人間はいない
0100デフォルトの名無しさん垢版2018/08/24(金) 23:51:12.91ID:bUYoJBbe
ブルーボトル日本開店おめでとう。西海岸で飲む、いつもの味。僕にとって新鮮みがないことが、成功の証だと思う。
0101デフォルトの名無しさん垢版2018/08/25(土) 00:16:21.97ID:r5O9PJUC
>>99
> 呼吸することを自慢する人間はいない
そうだな、呼吸することをいちいちこんなスレに書くやつもいないわな w
0102デフォルトの名無しさん垢版2018/08/25(土) 01:48:48.16ID:i/FnC0mp
>>90
おお、便利そうですね。勉強になります。
Excel絡んでるの、最後のとこだけ?

PowerShellも腰据えて勉強しようかな?
0103デフォルトの名無しさん垢版2018/08/25(土) 01:54:18.00ID:i/FnC0mp
でも、ここVBA質問スレなので、別スレに分かれてるとうれしいな。
Excel PowerShell 質問スレ とか作ってそこでご指導いただけると
ありがたいです。
0104デフォルトの名無しさん垢版2018/08/25(土) 05:01:12.37ID:gxBSyOuw
>>79
そういう複雑なものは、PowerShell では難しいから、Ruby を使う

Dir.glob('C:/Users/Owner/Documents/Ruby/test/**/*.csv') do |file| # 再帰的に
next if File.directory? file # ファイルだけを処理する

CSV.foreach( file ) do |row| # 各行
# row[0] 〜 row[2] (列0〜2)を使って計算する
end
end
0105デフォルトの名無しさん垢版2018/08/25(土) 11:15:08.47ID:qAZZDdLI
>>104
> 新規Excelブックに出力して
> 出力した全行をテーブルレイアウトに変更する

要件満たしてなくない?
0108デフォルトの名無しさん垢版2018/08/25(土) 11:40:32.66ID:t7aLMQyu
Excelから始まってExcelに終わる
Excel以外の外部環境とは隔離
これがエクセル案件
VBAはエクセル案件のためにある
0110デフォルトの名無しさん垢版2018/08/25(土) 12:32:54.50ID:+ZJnaWB8
>>108
データ量を考えた場合、RDBとの連携は認めても良いとは思うのだけどね。いちいち>>104みたいにRubyを持ち出すバカは別にして
0111デフォルトの名無しさん垢版2018/08/25(土) 12:34:48.30ID:t7aLMQyu
>>110
認めたら他の言語が優位になってしまう
エクセルでやるならエクセルだけで完結させる
これは絶対的なルールで例外は認められない
0112デフォルトの名無しさん垢版2018/08/25(土) 12:41:34.89ID:0r5h6/lL
普通にdll作ってexcelからdllの関数読んで作るような案件ないくらでもあるかな
追うのが困難な知恵遅れ大量クソVBAを知恵遅れが書くのを防止することもできる

excelでvbaを書くぐらいしかできない知恵遅れ無能に
できるだけ余計な事をさせない事前策にもなってる
0113デフォルトの名無しさん垢版2018/08/25(土) 13:28:24.31ID:bGX52BVk
自分用のちょっとしたツール
 スプレッドが必要
  操作補助が必要
   補助の内容が複雑->.NET(COM)+VBA(イベント, フォーミュラひも付けのみ)
   補助の内容が単純->VBA
  操作補助が不要->自分の環境で使用可能な任意の言語
 スプレッドが不要->自分の環境で使用可能な任意の言語
他人に配布するツール
 依存関係(※1)が揃っているとわかっている->その依存関係で使用可能な任意の言語
 依存関係(※1)が揃っているかわからない->PowerShell 2.0

※1 Excelは依存関係の1つと数える
0114デフォルトの名無しさん垢版2018/08/25(土) 13:30:13.57ID:uy5cTArP
RDBとの連携 ← 必須
dll作って呼ぶ ← 普通にやる
テキストファイルの読み書きをする ← あんまりやらない
0116デフォルトの名無しさん垢版2018/08/25(土) 18:49:03.73ID:8J3vBuCl
実際、VBAじゃどうにもならないこともある。
なんで他言語自慢はVBAでも出来ることばかりなんだ?
他言語でもレベルの低い奴ばかり来てるんだろうな。
0117デフォルトの名無しさん垢版2018/08/25(土) 19:21:39.09ID:bGX52BVk
>>115
呼吸みたいなこともできんので驚いたって話だよ
0118デフォルトの名無しさん垢版2018/08/25(土) 19:38:40.64ID:zQ0fIRr+
自分から驚きにいってあえて驚いたと言いたがるアホw
0119デフォルトの名無しさん垢版2018/08/25(土) 19:40:49.82ID:DCt62qfA
VBAの何が良いって、適当に書いたプログラムを他人に渡しても、受け取った人(IT系では無い一般事務員)がその場で治せることが一つのメリットだと思う。
Powershellみたいに一行に何でもかんでも押し込まれたら、読めるもんも読みたくないわ
ましてや電話越しにデバッグして貰うとかVBAか関数にしか無理
0120デフォルトの名無しさん垢版2018/08/25(土) 19:48:19.41ID:zQ0fIRr+
>>119
別にパワーシェルやから一行に何でもおしこめる訳ちゃうわw
ワンライナーに童貞を奪われた厨房ってのは何時の時代も一定数おんねんw
0121デフォルトの名無しさん垢版2018/08/25(土) 20:12:22.32ID:RyVjXt1l
ワンライナーは人に渡すもんではなく、自分用だよ、きちんとps1ファイルに書くことも可能
0123デフォルトの名無しさん垢版2018/08/25(土) 20:27:16.37ID:t7aLMQyu
試しに同じ処理をVBAで書いてどっちがわかりやすいか、変更・拡張しやすいか、比べてみませんか
ハンデとしてワンライナーじゃなくても構いません
VBAユーザーの皆さんさあどうぞスマートなコードを書けるものならぜひ書いてみてください
もちろん尻尾巻いて逃げるのは構いませんがそんな情けない人はここには居ないと信じています
0124デフォルトの名無しさん垢版2018/08/25(土) 20:34:55.96ID:KMExyDFm
>>123
>>79の話? ああ良いですよ書いてあげましょう
0125デフォルトの名無しさん垢版2018/08/25(土) 20:35:18.16ID:KMExyDFm
VBAの全力をお見せしましょう
0128デフォルトの名無しさん垢版2018/08/25(土) 20:42:30.57ID:KMExyDFm
できました

Files = ReadCsvFiles("*.csv")
Data = ReadCalcPower(Files)
Sort Data, "desc"
ExportExcel Data
0129デフォルトの名無しさん垢版2018/08/25(土) 20:44:48.11ID:t7aLMQyu
>>127
例えば隣に座ってるおじさんが呼吸してなかったら驚くし声をかけるだろう?
ねえねえVBAくんさっきから息してないけど大丈夫?生きてる?
まあだいたいそういう感じ
0130デフォルトの名無しさん垢版2018/08/25(土) 20:49:05.28ID:Nh0ThV6Y
powershellは凄いぞ!ワンライナーで何でも掛ける!
って言ってる奴が出てきた時はまともなpowershellユーザーがちょっと可愛そうではあった
0132デフォルトの名無しさん垢版2018/08/25(土) 20:51:53.55ID:KMExyDFm
>>131
PowerShellと粒度を揃えましてん
0133デフォルトの名無しさん垢版2018/08/25(土) 20:52:42.36ID:KMExyDFm
VBAの書き方がわからないおじさんに教えてあげましてん
0134デフォルトの名無しさん垢版2018/08/25(土) 20:57:11.08ID:zQ0fIRr+
>>130
まともなパワーシェルユーザーなんか居らんわwバカかとんでもないバカだけやw
0137デフォルトの名無しさん垢版2018/08/25(土) 21:01:55.54ID:KMExyDFm
>>135
バグではないよVBAではこのように抽象化することで
コードをわかりやすく書くの
PowerShellでもExcelExportがどうなってるかは見えないよね
それと一緒
0140デフォルトの名無しさん垢版2018/08/25(土) 21:13:56.58ID:KMExyDFm
>>138
検証してやるから全部のソース出してよ
Export-Excelもそう、Sort-Objectもそう、それらのソースコードを
提出していただこうか、粒度を合わせるんだよ
0141デフォルトの名無しさん垢版2018/08/25(土) 21:14:46.00ID:KMExyDFm
>>139
ソートはないよ、自分で作るなりネットから拾ってくるなりで
0142デフォルトの名無しさん垢版2018/08/25(土) 21:15:13.16ID:KMExyDFm
粒度の違うものを比較しても仕方がない
0145デフォルトの名無しさん垢版2018/08/25(土) 21:30:20.04ID:KMExyDFm
>>143
長すぎて読む気にならない
無駄なものを貼るな
0147デフォルトの名無しさん垢版2018/08/25(土) 21:49:32.83ID:KMExyDFm
>>146
僕は一切言い訳をしないし逃げることもない
ずっとここにいる、君はなぜここに居る
0148デフォルトの名無しさん垢版2018/08/25(土) 21:49:50.30ID:KMExyDFm
なぜPowerShellのソースコードを貼る
0150デフォルトの名無しさん垢版2018/08/25(土) 21:58:36.58ID:KMExyDFm
>>149
僕が言ってることには完全に筋が通っている
粒度を合わせることによってVBAとPowerShellの比較を可能にして
VBAのコーディング方法をPowerShellユーザに伝授した
もっと丁寧なお礼をいただいても良いと改めて読み返してそう思った
0151デフォルトの名無しさん垢版2018/08/25(土) 22:18:30.20ID:t7aLMQyu
>>150
えーつまりVBAのコーディング作法では
未定義の関数を呼び出してエラーが出るのを眺めるのが正義、ということですか
流石vbaerは言うことが一味違いますね
0152デフォルトの名無しさん垢版2018/08/25(土) 22:19:12.23ID:KMExyDFm
>>151
誰もそんなこと言ってないですね
あなた誰ですか?
0153デフォルトの名無しさん垢版2018/08/25(土) 22:22:37.73ID:t7aLMQyu
というかことの起こりは

>>79

このレスだぞ
このレス自体はPowerShellとは無関係な純粋なVBAの質問だろ?

そのあとでPowerShellだとどうやるのと聞き返されたから答えたまで

ということで純粋なVBAの質問である>>79への解答を待ってます
VBAでは実現不可能でしたら解答しなくても結構です
0154デフォルトの名無しさん垢版2018/08/25(土) 22:24:42.27ID:KMExyDFm
>>153
VBAで実現可能です
純粋なVBAの最終解答をお示しします

Files = ReadCsvFiles("*.csv")
Data = ReadCalcPower(Files)
Sort Data, "desc"
ExportExcel Data
0156デフォルトの名無しさん垢版2018/08/25(土) 22:29:54.81ID:KMExyDFm
ワークシートの名前を変更するにはどうしますか?

VBAでどうやるのか聞き返されたら答えるまでですけど
PowerShellではどうやるのか教えてください
0157デフォルトの名無しさん垢版2018/08/25(土) 22:30:42.72ID:KMExyDFm
>>155
だったらPowerShellのプログラムも僕の環境ではピクリともしません
それを嘘つきというならPowerShellの方が嘘つきです
0158デフォルトの名無しさん垢版2018/08/25(土) 22:31:13.63ID:KMExyDFm
>>156
に答えてください
0159デフォルトの名無しさん垢版2018/08/25(土) 22:38:12.10ID:t7aLMQyu
>>156
$app = New-Object -ComObject Excel.Application
$book = $app.Workbooks.Open($targetFilePath)
$book.Worksheets($targetSheetIndex).Name = "NewName"
$book.Close($true)
$app.Quit()

こちらは答えましたよ
あなたもはぐらかさないで真面目に>>79に答えてください
0160デフォルトの名無しさん垢版2018/08/25(土) 22:41:51.71ID:KMExyDFm
>>159
VBAではこうです
ActiveSheet.Name = "合計"
ワンライナーで一撃です

>>79に答えます
VBAではこう書きます
Files = ReadCsvFiles("*.csv")
Data = ReadCalcPower(Files)
Sort Data, "desc"
ExportExcel Data
0161デフォルトの名無しさん垢版2018/08/25(土) 22:45:42.55ID:t7aLMQyu
>>160
あなたのコードには致命的な欠陥があります
対象とするブックを手作業で開かなければならなりません
これでは自動化を検討する程度の数のブックを相手にした時に間違いなく腱鞘炎になってしまいます

>>79への解答は不適切です
このコードには未定義の関数・サブルーチンが含まれているため動作しません
関数・サブルーチン化するならその実装も解答に含めて下さい
0162デフォルトの名無しさん垢版2018/08/25(土) 22:46:32.76ID:Jrsn7acQ
確かに、なんでもワンライナーで出来るかのような表現を使うよね、Powershellユーザー。

多分、そうは書いてない、思い込みだろうってレス着くと思うけど。
0163デフォルトの名無しさん垢版2018/08/25(土) 22:51:17.33ID:KMExyDFm
PowerShellとCOMってGCの方式が違いますよね
一方は世代別GC、一方は参照カウント
GC方式の違うものを混ぜるとメモリリークしますよ
>>159はメモリリークしますよ
0165デフォルトの名無しさん垢版2018/08/25(土) 22:52:25.25ID:t7aLMQyu
>>162
あなたの主張はデタラメです
パワーシェルはワンライナーであらゆる処理を書けるほど表現力が高く、基本ライブラリが充実していることは確かに事実ですが
だからと言ってなんでもワンライナーで書くわけではありません
パワーシェルのユーザーは
1つのコマンドで1つの仕事を上手くこなす
コマンドを組み合わせて大きな複雑な仕事をこなす
というシェルプログラミングの良い習慣をもちろん知っています
論より証拠ということで>>143のリンクをみてください
0167デフォルトの名無しさん垢版2018/08/25(土) 22:53:11.40ID:KMExyDFm
>>161
いま開いてるExcelのシート名変えるってことなら問題ないですよね
じゃあそれで、むしろそれで

現在開いてるExcelのシート名をPowerShellで変えるにはどうしますか?
0168デフォルトの名無しさん垢版2018/08/25(土) 22:53:42.68ID:r5O9PJUC
>>99 > 呼吸することを自慢する人間はいない

>>129 > 例えば隣に座ってるおじさんが呼吸してなかったら驚くし声をかけるだろう?

こんな脈絡のないことを言い出してて驚くわ
まあ気味悪いから対面してたら放置するけど w
0169デフォルトの名無しさん垢版2018/08/25(土) 22:55:26.08ID:KMExyDFm
>>166
マイクロソフトも認識してます
だから.NETにはReleaseComObjectという
COMのためのメソッドが用意されてます
あなたのコードにはメモリリークのバグが存在します、僕はあなたにそれを報告します
0170デフォルトの名無しさん垢版2018/08/25(土) 22:59:43.30ID:t7aLMQyu
>>167
[Runtime.Interopservices.Marshal]::GetActiveObject('Excel.Application').ActiveSheet.Name = "NewName"

逆に聞きますが、エクセルが起動していない時に、指定のブックの指定のシートの名前を変えるVBAコードは、どうやって書けばいいのですか?
0171デフォルトの名無しさん垢版2018/08/25(土) 23:01:55.95ID:KMExyDFm
>>170
まずExcelを起動します
開発のボタンを押してマクロエディタを起動します
そしてワンライナーの一撃コードを実行します
これがVBAの正規の手順です
0172デフォルトの名無しさん垢版2018/08/25(土) 23:03:45.08ID:KMExyDFm
[Runtime.Interopservices.Marshal]::GetActiveObject('Excel.Application').ActiveSheet.Name

これ暗記してるん? すごい
0173デフォルトの名無しさん垢版2018/08/25(土) 23:04:21.09ID:KMExyDFm
メモリリークしてますけど
0174デフォルトの名無しさん垢版2018/08/25(土) 23:04:53.64ID:3sYR2W/i
便乗で聞きたいんだけど
powershellでVBAの定数はそのまま使えるの?定数をCOMか何かからロードしたりするの?
あと名前付き引数とかどう処理するの?
0175デフォルトの名無しさん垢版2018/08/25(土) 23:05:39.78ID:t7aLMQyu
>>169
ReleaseComObjectは速やかに参照カウントを減らすためのものです
それを実行しなくてもGCやプロセス終了時にリソースが解放され参照カウントも適切に処理されるので安心してください

明示的にReleaseComObjectを呼ばなければリークする、などという危険な状態を主力商品の1つである.NET上で放置するほどMicrosoftは怠惰ではありません
0177デフォルトの名無しさん垢版2018/08/25(土) 23:07:44.56ID:t7aLMQyu
>>171
それでは手間が多すぎます
おそらく手作業でシート名をクリックして名前を入力する方が早いでしょう
0178デフォルトの名無しさん垢版2018/08/25(土) 23:09:52.00ID:t7aLMQyu
>>173
証拠の提示をお願いします
メモリリークの場合最低でも次の3つは欲しいですね

再現性のあるメモリリークを起こすコード
メモリを測定するコード
あなたの環境で測定したデータを分析したレポート
0179デフォルトの名無しさん垢版2018/08/25(土) 23:10:23.46ID:KMExyDFm
>>175
参照カウントじゃないから参照なくなってもGCが動くことが保証されないですよ
プロセスがすぐ終了するかも仕様次第ですし、博打プログラミングですよ

GCの方式が違うからこれは技術的にどうしようもないんですよ
怠惰ではないです、むしろマイクロソフトは頑張ってる方ですよ
実装者の知識と努力に期待せざるを得ないのは宿命です
0180デフォルトの名無しさん垢版2018/08/25(土) 23:12:21.64ID:KMExyDFm
>>177
こう考えてください、VBAを書くときExcelは起動してるんです
マクロエディタも起動してるんです、手間なんて何もありません
手作業では大変なことを行おうとしてるさなかのシート名変更ということですね
0181デフォルトの名無しさん垢版2018/08/25(土) 23:14:42.41ID:KMExyDFm
>>178
GC方式が違う、それが証拠です
PowerShellにデストラクタが存在しないことが
GC方式が違うことの証拠です
GC方式とソースコードからメモリリークは明らかです
明らかなものに調査はそれ以上の調査は必要ありません
0182デフォルトの名無しさん垢版2018/08/25(土) 23:14:59.37ID:t7aLMQyu
>>179
すぐには回収されないだけとリークするの間には深い溝があります
遅くともある時点までには解放されることがわかっているわけですから、博打でもなんでもありません
.NETにはそれをコントロールする術も用意されています
0183デフォルトの名無しさん垢版2018/08/25(土) 23:17:12.93ID:KMExyDFm
>>182
コントロール術が用意されてるならそれを使ってコードを書いてくださいよ
解放されることはわかりませんよ、.NETでGCが行われることは保証されません
.NETにはデストラクタがないでしょう? それが証拠です
0184デフォルトの名無しさん垢版2018/08/25(土) 23:19:11.39ID:t7aLMQyu
>>180
いいえ
残念ですが起動していないことの方が多いでしょう
もし起動していたとしてもシート名を直接変える方がマシです
0185デフォルトの名無しさん垢版2018/08/25(土) 23:20:33.06ID:7hA7VMUm
excelのマクロの効率的な書き方について相談できるサイトってどこかにある?仕事の話なのでこういうところに公開することはできないので…
0186デフォルトの名無しさん垢版2018/08/25(土) 23:22:33.22ID:t7aLMQyu
>>181
支離滅裂で全く明らかではありません
GCでインスタンスが回収されると自動的に参照カウントが適切に処理されます
したがって何もせずともリークは起こりません
回収が少し遅れるだけです
0188デフォルトの名無しさん垢版2018/08/25(土) 23:25:30.09ID:t7aLMQyu
>>183
[GC]::Collect()

CLRではデストラクタではなくファイナライザがサポートされています
ご安心ください
0190デフォルトの名無しさん垢版2018/08/25(土) 23:26:47.14ID:KMExyDFm
>>188
ドトネトーは世代別GCなので1回実行しても回収される保証はないですよ
0191デフォルトの名無しさん垢版2018/08/25(土) 23:29:32.44ID:t7aLMQyu
>>187
あるブックのあるシート名を変えたいと思った時にエクセルが都合よく開いているとは限りません
0192デフォルトの名無しさん垢版2018/08/25(土) 23:31:35.44ID:KMExyDFm
>>188

Object.Finalize メソッド (System)
https://msdn.microsoft.com/ja-jp/library/system.object.finalize(v=vs.110).aspx

| ガベージ コレクションは非決定的であるため、ガベージ コレクターが終了処理を実行すると正確にわかっていません。
| リソースを解放する、すぐにこともできますを実装する、 dispose パターンとIDisposableインターフェイスです。

マイクロソフトも半分支離滅裂ですがファイナライザの使用が非推奨なことが読み取れます
IDisposableインターフェースが用意されてるくらいです
0194デフォルトの名無しさん垢版2018/08/25(土) 23:34:23.56ID:KMExyDFm
>>193
勉強になります
0195デフォルトの名無しさん垢版2018/08/25(土) 23:35:38.63ID:Jrsn7acQ
>>191
Excel VBAを実行するのだからExcel ファイルは開いてますよ。
指定のファイルが開いてないってことを言いたいの?
その場合の処理はあなたのPower shellのコードと大差ないけど。
0196デフォルトの名無しさん垢版2018/08/25(土) 23:35:49.52ID:KMExyDFm
でもそれを呼ぶ前に全部のメモリ参照をなくす必要があります
それってできますか? PowerShellの変数スコープは変態ですから
事実上不可能です
0197デフォルトの名無しさん垢版2018/08/25(土) 23:40:52.15ID:t7aLMQyu
>>192
MSDNの翻訳が酷いことは有名なのでそれは我慢しましょう

リソース解放の時期をコントロールしたいなら決定的なIDisposableを使ってください
決定的でなくても問題がないならIDisposableに頼る必要はありません

スクリプトの利用形態から考えるとプロセスの寿命は非常に短くなります
これはエクセルインスタンスが本当に必要なくなった瞬間とプロセスの終了が時間的にほとんど離れることがないということです
このような場合では決定的な解放にこだわらなくても問題にはなりません
0199デフォルトの名無しさん垢版2018/08/25(土) 23:47:08.86ID:KMExyDFm
>>197
そうとも限らないと思います
スクリプトを使うということは手作業での作業が煩わしく
それを効率化したいという欲求があるためです
スクリプトを書くとき、その時は常に手作業を躊躇する程の事態が発生している
状況と考えるべきで、ある処理がメモリを使んで離さなくて別の処理が
完了できないという経験を僕は山ほど経験してきました
メモリ管理を甘く見ると痛い目を見ます痛い目を見ます
0200デフォルトの名無しさん垢版2018/08/25(土) 23:47:54.93ID:0r5h6/lL
パワー系池沼シェル
0201デフォルトの名無しさん垢版2018/08/25(土) 23:52:33.06ID:KMExyDFm
>>198
パワーシェルのスクリプトを作成して
コマンドプロンプトを起動して
コマンドを入力する必要があるじゃないですか

その時間使ってExcelを起動しましょう
VBAなら一撃です
0202デフォルトの名無しさん垢版2018/08/25(土) 23:54:08.14ID:t7aLMQyu
>>196
処理を適切に構造化して変数のスコープを無闇に伸ばさなければ、自然と不要な変数の参照は辿れなくなります

そして先ほども書いたようにスクリプトはプロセス全体の寿命も短くなりやすいので
変数のスコープはそれほど問題にはなりません

どうしても変数をクリアしたいならClear-Variableというコマンドレットがあります
個人的に使う機会がないコマンドレットですがスコープとワイルドカードを指定してまとめて変数を消去でるそうです
0203デフォルトの名無しさん垢版2018/08/25(土) 23:55:26.38ID:Jrsn7acQ
>>198
>>156
$app = New-Object -ComObject Excel.Application
$book = $app.Workbooks.Open($targetFilePath)
$book.Worksheets($targetSheetIndex).Name = "NewName"
$book.Close($true)
$app.Quit()

ファイル開いてるけど、頭おかしいの?
0204デフォルトの名無しさん垢版2018/08/26(日) 00:02:52.04ID:MAEGr9r4
>>199
シビアなリソース管理が必要ならその時に適切なコードを書けばいいでしょう
なにもすべてのスクリプトを怠惰に書けと強制しているわけではないのですから
ですがほとんどの日常作業でそこまでシビアなリソース管理が要求されることはありません
それとリソースの不足は非決定的なリソース解放よりも非効率的なアルゴリズムが原因で発生することが多いということは知っておいた方がいいでしょう
0205デフォルトの名無しさん垢版2018/08/26(日) 00:05:13.99ID:MAEGr9r4
>>201
あなたの書いたコードは名前を変えたいと思うたびにブックを開かなければなりません
シェルを1度起動してパラメータを変えるだけとは訳が違います
0207デフォルトの名無しさん垢版2018/08/26(日) 00:07:41.89ID:MAEGr9r4
というか話を戻しますが>>79への解答はまだですか?
どうやら関係ないPowerShellの質問を繰り返して話をそらして逃げようとしているようですが忘れていませんよ
0208デフォルトの名無しさん垢版2018/08/26(日) 00:12:16.95ID:IHxJX3F+
>>207
失礼な、僕は逃げも隠れもしません
>>79に対する解答をお示しします、ご査収ください

Files = ReadCsvFiles("*.csv")
Data = ReadCalcPower(Files)
Sort Data, "desc"
ExportExcel Data
0209デフォルトの名無しさん垢版2018/08/26(日) 00:18:26.74ID:IHxJX3F+
>>204
アルゴリズムが大事なのは知ってますが
スクリプトでExcelを操作するときには計算量を気にしなければ
いけないほどのアルゴリズムを使うことはありません

やることはせいぜいシートの名前を変えて
コピーして集計して並べるくらいでしょう

問題はリソースリークなんです、関数を作りまくって
GCを呼びまくりますか? 僕の目にはそれは狂気と映ります
0210デフォルトの名無しさん垢版2018/08/26(日) 00:19:56.82ID:IHxJX3F+
>>205
VBAでブックを開きたくなりましたか? 教えましょう
Workbooks.Open "C:\Book1.xlsx"
一撃です

VBAは一撃です
0211デフォルトの名無しさん垢版2018/08/26(日) 01:39:01.53ID:LgI1E3BQ
プロセス終了で必ず開放するんだから必要ならそういうスクリプト書けばいいんじゃないの
powershellに限らずリーク問題を解決するためにプロセスサーバ的な構成にしたりするけど
0212デフォルトの名無しさん垢版2018/08/26(日) 01:45:08.66ID:L5No1MGJ
>>189
あ、想定してたのはフェイスtoフェイスで相談かメールで相談する形式なんだけれど、そういうのはやってないかなあ?
0213デフォルトの名無しさん垢版2018/08/26(日) 07:13:59.14ID:4dFHA/W/
>>206
えっとまさか、実行に必要なファイルを全部手で開かないといけないと思ってたの?

バカ丸出しですね。
0214デフォルトの名無しさん垢版2018/08/26(日) 07:57:33.17ID:w0D5YFHr
PowerShell から、Excel, IE とかは、別プロセスを起動するだけだろ?
シェルって、別プロセスを起動するものだろ?

GC のやり方の違いなんて、関係あるか?
0215デフォルトの名無しさん垢版2018/08/26(日) 08:36:31.73ID:2yDRx5ys
VBAの質問です

指定フォルダを再帰的に検索してファイル名が*.csvにマッチするCSVファイルを列挙
各CSVからX列, Y列, Z列を読み取ってD := (X^2 + Y^2 + Z^2)^(1 / 2)を計算する
Dの大きい順に並び替えてX, Y, Z, Dを新規Excelブックに出力して
出力した全行をテーブルレイアウトに変更する

というプログラムを作りたいのですがどのように書けばいいでしょうか?
0216デフォルトの名無しさん垢版2018/08/26(日) 08:56:15.82ID:4dFHA/W/
>>215
Excelに出力するって内容を足したのかw
しかもワンライナーって条件を外したのねw
その内容をPower shellのワンライナーでどうやるんだろうねw
0220デフォルトの名無しさん垢版2018/08/26(日) 11:26:25.25ID:uHGK9EwR
頭の悪さを全力で競い合ってるスレがあると聞いて飛んできた
どれも最底辺レベルで甲乙つけがたいな
0221デフォルトの名無しさん垢版2018/08/26(日) 11:28:33.75ID:umld+6tZ
大昔何かの雑誌でBASICで一行ゲームとかネタでやってたのを思い出した

>>90 こんなの処理系にパイプ処理があるかないかだけの違いだろ
一行記述できるかどうかは、一行に記述できる最大文字数に加えて
パイプで記述できるか、一命令の区切り記号が設定してあるかくらいで決まる
区切り記号は、C系(C#)では;か}、昔のBASICでは:があったしLISPなんかは括弧で区切ればいくらでも書ける

ワンライナーなんて対話的に使う時に一々スクリプトを立ち上げたり面倒なので使うもの
可読性が悪くなるだけなのでプログラムで絶対に使うもんじゃない
昔のPCのメモリも少なかったのでそれなりに意味はあったんだけど捨てられた

今ではせいぜいネタ、言語のの優位性とは完全に無関係
0222デフォルトの名無しさん垢版2018/08/26(日) 11:30:23.98ID:IHxJX3F+
Excelらしくやるならインポートが先かな
1. インポート_CSV
2. 追加_数式列
3. ソート_数式列
4. 変換_テーブルレイアウト
Excelのパワーをフル活用したいものだね
0226デフォルトの名無しさん垢版2018/08/26(日) 11:49:13.32ID:MAEGr9r4
>>221
流れるようなインターフェースとかパイプラインを使ったワンライナーはモダンなプログラミングでは常識的なテクニックだよ
太古の時代から時が止まってるVBAのユーザーは知らないかもしれないけど
例えばc#のLinqやJavaのstreamなどはもろにパイプラインから影響を受けてるよね
VBAしか使わないのかもしれないけど少しは興味もって知識をアップデートしたら?
0229デフォルトの名無しさん垢版2018/08/26(日) 11:59:00.96ID:MAEGr9r4
>>227
必要あるなしでいったらなにも必要ないよ
手作業だけでも仕事はできる
そうじゃなくて、より良い方法はないか?って模索していくことが大事なんだろ
つーか事務員がstreamを理解できないなんてのも決めつけでしかない
所詮は部品の組み合わせだから、手続き型のアルゴリズムを理解するよりずっと簡単だよ
簡単で効果的だから様々な言語が挙って似たような機能を導入したんだ
0230デフォルトの名無しさん垢版2018/08/26(日) 12:01:32.97ID:MAEGr9r4
>>228
の割にはVBAコードが何にも出てこないよな
低レベルのPSerが息をするように簡単に書ける処理を
これだけ時間をかけて答えることができたVBAerがまだ一人もいないってちょっとレベル低すぎでしょ
0234デフォルトの名無しさん垢版2018/08/26(日) 12:11:11.72ID:MAEGr9r4
>>231
確かに
VBAerはコードを絶対に書こうとしないからコードがどうこう以前の問題なんだよな
意見するのはかまわんけど最低限、コードを書いて実証してからにしてほしいよね
コードも書かずに意見しても、うちで修行すれば空飛べるぜー、とか豪語する真理教のおっさんと大差ない
まさに戯言になってしまう
なんでvbaerさんまずはコードを書きましょう
>>79への解答待ってます
0236デフォルトの名無しさん垢版2018/08/26(日) 12:15:34.05ID:NdNCtt3a
ユーザー系の仕事でVBAつったら、事務員のスプレッドを少し自動化したものから、業務知識鬼のベテランがプログラム ちょっとかじったものまであるけど、最近またRPAバブルで前者を移植することになった

このRPAっつー半分胡散臭いものが流行るおかげでワシらオッサンPGが食っていけるわけだが、いかんせん胡散臭い
0239デフォルトの名無しさん垢版2018/08/26(日) 12:27:21.24ID:IHxJX3F+
>>234
これ一個ずつやってみたらどうだろ?
VBAの実装の仕方がわからないって質問ですよね

1. インポート_CSV
2. 追加_数式列
3. ソート_数式列
4. 変換_テーブルレイアウト

自分で調べてみてそれでもわからないことが
出てきたら具体的に聞いてもらうということで
0241デフォルトの名無しさん垢版2018/08/26(日) 12:30:12.52ID:IHxJX3F+
他人を値踏みするスレじゃないですし
他人と自分を比較して自信をつけるスレでもないと思うんですよ
Excel VBAでわからないことがあったら質問するスレということで
ご理解賜りたいと思う次第でございます
0242デフォルトの名無しさん垢版2018/08/26(日) 12:31:08.57ID:IHxJX3F+
>>240
議論に敵も味方も勝ちも負けも良いも悪いもないと思うんですよ
みんなで意見を出し合ってVBAパワーを高め合いましょう
0243デフォルトの名無しさん垢版2018/08/26(日) 12:38:03.33ID:gb73y82y
>>536
dbからcsvでブッコ抜いた、300万件程度のレコードのなかから
〜って条件に該当するレコードをExcelで抜いてくださいと言われたことがあって困惑した

Excelじゃ無理だといったら「なんで出来ないのか、PGなんだからできるでしょ」みたいな言い方された
1週間あげるから、1週間でExcelであげて欲しいと・・

結局なんとか、Excelじゃなくてもいいと説得してその日のうちに
仕上げたら「早すぎるのじゃないか」「正確性が心配だ」と文句言われた



ことを思い出した
0244デフォルトの名無しさん垢版2018/08/26(日) 12:40:55.31ID:4ngh3oqJ
だからなんで読んだ瞬間に組めると思うようなアホ臭い処理で比較してるんだよ。

頭悪いなあ。
そんなもんで比較してもVBAの優位性は変わらんぞ。
Excel上から実行出来るとか1ファイルで済むとか。

例えばフローレイアウトを使うことは無いと思うが、あれならまだ分かる。
あれはVBAじゃ無理だと思うからな。
見て組めると思うようなものをわざわざこんな所で披露するのはアホだと思う。

そんなもんは仕事でやれ。
そんなくだらないことをする時間がもったいない。
0245デフォルトの名無しさん垢版2018/08/26(日) 12:42:38.16ID:Kp4FoNKX
今のExcelって100万行/シートだから3つか4つのシートに分割して読み込んで処理すれば不可能ではないよな、65000行時代なら考えたくないが
0248デフォルトの名無しさん垢版2018/08/26(日) 12:46:25.60ID:4ngh3oqJ
>>243
いや、仕事でやったことあるぞ。
もっとデータ多かったと思う。
それに引っこ抜くだけじゃなくて、それで演算もしてた。

今、計算してみたらデータは26280000以上だった。
正確には分からないけど多分倍以上だな。
0249デフォルトの名無しさん垢版2018/08/26(日) 12:48:32.93ID:MAEGr9r4
>>244
VBAだと組むのに多大な労力がかかるからレスバトルごときではやりたくないんですよね
その気持ちわかります
これがVBAでもスラスラ短く書けるものだったらほれみたことかと言わんばかりに嬉々として解答してくれていたのでしょうね
0250デフォルトの名無しさん垢版2018/08/26(日) 12:52:38.54ID:IHxJX3F+
>>246
ホントだ受け付けてないんだね
0251デフォルトの名無しさん垢版2018/08/26(日) 12:53:11.08ID:IHxJX3F+
バトルだったのかー
0252デフォルトの名無しさん垢版2018/08/26(日) 12:53:15.29ID:4ngh3oqJ
1000個所以上(多分倍以上)の場所から1時間毎に取得したデータ3年分だな。

これをある時間毎に平均をとって1日に24個の平均値を作り、その最大をその日のデータとする。
で、それを3年分の日数取ってきて・・・
みたいな。
0253デフォルトの名無しさん垢版2018/08/26(日) 12:56:49.15ID:4ngh3oqJ
>>249
いや、スラスラとか関係ない。
5分で出来るものが20分になっても大したことない。

出来ないものは出来ないし、
何とかして頑張って出来るというものだったら5分が10日とかになる。
そういう方が問題。
解決策がみい出せるかどうかの方がよっぽど重要だよ。
0254デフォルトの名無しさん垢版2018/08/26(日) 12:57:52.90ID:IHxJX3F+
     /⌒ヽ
\ ⊂[(_ ^ν^)     決闘状を申し込む!
  \/ (⌒マ´
  (⌒ヽrヘJつ
    > _)、
    し' \_) ヽヾ\
          丶_n.__
           [I_ 三ヲ (
              ̄   (⌒
            ⌒Y⌒
0255デフォルトの名無しさん垢版2018/08/26(日) 12:59:13.59ID:4ngh3oqJ
>>249
短くスラスラ書けるようなものだったら回答しない。
他の誰かが回答するか、そいつが少し調べれば解決出来るだろうから。
0256デフォルトの名無しさん垢版2018/08/26(日) 13:07:54.88ID:TGlid3xa
たとえスラスラ書けてもVBAじゃ1レスに収まらないでしょ
VBAerはpastebinとかgistとかのコード共有サービスの存在も知らなそうだし
0259デフォルトの名無しさん垢版2018/08/26(日) 13:29:43.99ID:nkjaCm6A
ワンライナーじゃなくてもいいけどイミディエイトウィンドウしか使っちゃいけないって趣旨ですね?
0260デフォルトの名無しさん垢版2018/08/26(日) 13:35:01.25ID:2yDRx5ys
>>259
もしできるならイミディエイトがいいけど
どうもVBAでは不可能って結論に落ち着きそうだから無理してイミディエイトを使わなくてもいいよ
普通にbasでもclsでも使ってください
とはいえレス分割するほど長くなると読む気がなくなるのでなるべくスマートに収めてください
0261デフォルトの名無しさん垢版2018/08/26(日) 13:35:33.66ID:Kp4FoNKX
>>243 よくよく考えると 1レコード分のバッファと条件一致したレコードの書き出し先さえ確保すれば
ReadLineの繰り返しで処理可能だから、レコードが何件あっても問題なさそう。
シートに取り込む必要なんてないわw
65000行時代でもできたと思うな
0262デフォルトの名無しさん垢版2018/08/26(日) 14:09:05.11ID:gniZ58wi
下のコードでボタンを押すたびにAの値が増えていくのですが
グローバル変数ってプログラムが終わっても残るものですか
またプログラムが終わったときに消えるにはどうしたらいいです?
Option Explicit
Dim A As Long
Sub ボタン1_Click()
A = A + 1
MsgBox A
End Sub
0263hoge垢版2018/08/26(日) 14:51:46.48ID:A6DnlFkA
>>79,239
暇だから書いてみた。
素人が書いたコードだからワンライナー?ではないけど許してほしい。
[Module1]
Sub hoge()
Dim i As Long, k As Long
Dim data() As Variant
Dim cCsv As Collection
Dim csv As clsCSV
Dim fso As New FileSystemObject
Dim fn As Variant
'CSV読み込み
k = 0
Set cCsv = New Collection
For Each fn In FileFilter(ThisWorkbook.Path, "csv")
Set csv = New clsCSV
cCsv.Add csv.LoadCSV(CStr(fn))
k = k + csv.RowsCount
Next
'CSV合成・計算
ReDim data(1 To k + 1, 1 To 4)
data(1, 1) = "X": data(1, 2) = "Y": data(1, 3) = "Z": data(1, 4) = "D"
k = 1
For Each csv In cCsv
For i = 1 To csv.RowsCount
k = k + 1
data(k, 1) = csv.Table(i, "X")
data(k, 2) = csv.Table(i, "Y")
data(k, 3) = csv.Table(i, "Z")
data(k, 4) = (csv.Table(i, "X") ^ 2 + csv.Table(i, "Y") ^ 2 + csv.Table(i, "Z") ^ 2) ^ (1 / 2)
Next
Next
0264hoge垢版2018/08/26(日) 14:52:20.01ID:A6DnlFkA
>>263 続き
'XLSXへエクスポート
Dim WB As Workbook
Dim Sh As Worksheet
Dim Tbl As Range
Dim LO As ListObject

Set WB = Workbooks.Add
Set Sh = WB.Worksheets(1)
Set Tbl = Sh.Cells(1, 1).Resize(UBound(data, 1), UBound(data, 2))
Tbl.Value = data

Set LO = Sh.ListObjects.Add(xlSrcRange, Tbl, , xlYes)
LO.Sort.SortFields.Clear
LO.Sort.SortFields.Add Key:=LO.ListColumns("D").Range, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
LO.Sort.Apply

WB.SaveAs ThisWorkbook.Path & "\hoge.xlsx"
WB.Close False

End Sub
0265デフォルトの名無しさん垢版2018/08/26(日) 14:53:06.26ID:A6DnlFkA
>>264 普通は汎用モジュールを使うが自宅にないので、それっぽく再現したもの

Function FileFilter(folder As String, ext As String, Optional ret As Collection) As Collection
Dim fso As FileSystemObject
Dim fil As File
Dim fol As folder

Set fso = New FileSystemObject
If ret Is Nothing Then Set ret = New Collection

For Each fil In fso.GetFolder(folder).Files
If fil.Name Like "*" & ext Then
ret.Add fil.Path
End If
Next

For Each fol In fso.GetFolder(folder).SubFolders
Call FileFilter(fol.Path, ext, ret)
Next

Set FileFilter = ret
End Function
0266hoge垢版2018/08/26(日) 14:54:14.81ID:A6DnlFkA
>>265 続き[clsCsv]
Private data As Variant
Private dCol As Dictionary

Public Function LoadCSV(fn As String) As clsCSV
Dim i As Long, j As Long, k As Long
'インポート
'※CSVの仕様が書いてないから、遅いけどコレで。
With Workbooks.Open(fn)
data = .Worksheets(1).UsedRange.Value
.Close False
End With
'列情報のキャッシュ
Set dCol = New Dictionary
For i = 1 To UBound(data, 2)
dCol.Add data(1, i), i
Next
Set LoadCSV = Me
End Function

Public Property Get Table(Row As Long, Col As String) As Variant
If dCol.Exists(Col) Then
Table = data(Row + 1, dCol(Col))
Else
Err.Raise 9999
End If
End Property

Public Property Get RowsCount() As Long
RowsCount = UBound(data, 1) - 1
End Property
行数制限が辛いわ
0269hoge垢版2018/08/26(日) 15:01:06.14ID:A6DnlFkA
無理に1行に押し込むより、少しづつステップ実行できる方が読みやすいし、良いのでは無いかと思うのでした。

VBAerの人頑張って最適化して?
0272デフォルトの名無しさん垢版2018/08/26(日) 15:56:23.14ID:A6DnlFkA
>>270
長いだけで素人にはすごく読みやすいよ。
F8で1行づつ動きを確認していって”ここだ!”ってところで追記して、実行して、違ったら矢印をちょっと前まで戻して、また追記して実行してry
って感じなので・・・。
0275デフォルトの名無しさん垢版2018/08/26(日) 16:04:06.82ID:YE41eTAF
ruby厨のせいでrubyが不当に貶められてるのが気に食わないのでrubyで>>79書いた
1レスに収まるこの簡潔さよ

require "csv"
require "win32ole"

path_to_folder = "."

data = Dir[path_to_folder + "/*.csv"]
.map{|path| CSV.read(path, converters: :numeric)}.flatten(1)
.sort_by{|x, y, z| (x**2 + y**2 + z**2) ** 0.5}.reverse

ws = WIN32OLE.new("Excel.Application").tap{|app| app.Visible = true}
.Workbooks.Add.Sheets[1]
cells = ws.Range(ws.Cells(1,1), ws.Cells(data.size, 3))
cells.value = data
ws.ListObjects.Add(nil, cells)


ワンライナーじゃExcel操作するのを綺麗に書けないから諦め
APIが糞ってはっきりわかんだね
0276デフォルトの名無しさん垢版2018/08/26(日) 16:17:18.62ID:YE41eTAF
>>79 Dも出力するのかこれ。ちょっと(1行と1文字)修正

require "csv"
require "win32ole"

path_to_folder = "."

data = Dir[path_to_folder + "/*.csv"]
.map{|path| CSV.read(path, converters: :numeric)}.flatten(1)
.map{|x, y, z| [x, y, z, (x**2 + y**2 + z**2) ** 0.5]}.sort_by(&:last).reverse

ws = WIN32OLE.new("Excel.Application").tap{|app| app.Visible = true}
.Workbooks.Add.Sheets[1]
cells = ws.Range(ws.Cells(1,1), ws.Cells(data.size, 4))
cells.value = data
ws.ListObjects.Add(nil, cells)



なおcsvライブラリは標準添付ライブラリなのでわざわざ自作クラスとか作る必要ないです
0277デフォルトの名無しさん垢版2018/08/26(日) 16:22:13.35ID:IHxJX3F+
>>276
Rubyの実行環境はどうやって入手するん?
事務員にできるん?
0278デフォルトの名無しさん垢版2018/08/26(日) 16:23:38.44ID:IHxJX3F+
Export-Excelはどうやって使うん?
事務員にできるん?
0279デフォルトの名無しさん垢版2018/08/26(日) 16:23:51.10ID:53MEpRMM
>>272
じゃあこのコードに
・ワイルドカードあるいは正規表現を使ったファイル列挙除外機能
・CSVファイルの文字コード指定機能
・CSVファイルのデリミタ指定機能
をサクッと追加できますか?
0280デフォルトの名無しさん垢版2018/08/26(日) 16:25:46.43ID:IHxJX3F+
事務員なら余裕やろな
0282デフォルトの名無しさん垢版2018/08/26(日) 16:29:19.59ID:IHxJX3F+
はい。
0283デフォルトの名無しさん垢版2018/08/26(日) 16:30:47.98ID:A6DnlFkA
>>276
自分が慣れてる書き方するために自作クラス作ったけど、作らなくても普通に書けるのでそこはツッコムところじゃないよ!

VBAは複数の二次元配列をマージする処理を自力で書かないといけないし、ソートもRangeに対して実行するか自作するかしないと出来ないので大変だとは思う。

やりたい命令がちゃんと用意されてるのはいいなぁ。
0284デフォルトの名無しさん垢版2018/08/26(日) 16:33:02.31ID:A6DnlFkA
>>279
だからCSV用のクラスはちゃんとしたのが会社に行かないと無いってば。
イジめないで!
ファイル列挙用もこんな即興で書いたのじゃなくて、マトモなのがある。

日常的に使うものだから特にね。。
0285デフォルトの名無しさん垢版2018/08/26(日) 16:37:26.33ID:LgI1E3BQ
WSHのjscript版。with_なんちゃらは適当に補完してね。jscriptにはsafearrayがないから普通に書くとセル格納が糞遅い。
var base_path = "C:\base_path"
var outxls = "DXYZ.xlsx";
var csv_list = [];
with_dir(base_path, function(file) {
if (!file.path.match(/\.csv$/i)) return;
var i = 1;
with_file(file.path, function(str){
if (i++ == 1) return; // exclude header
var csv1 = str.split(",");
var x = parseFloat(csv1[0]); var y = parseFloat(csv1[1]); var z = parseFloat(csv1[2]);
var d = Math.sqrt(Math.pow(x,2) + Math.pow(y,2) + Math.pow(z,2))
csv_list.push([d, x, y, z]);
})
})
function csv_list_sort(a, b) {
return b[0] - a[0];
}
with_excel(outxls, function(excel, book){
var sheet = (new Enumerator( book.Worksheets)).item();
csv_list.sort(csv_list_sort);
csv_list.unshift(["D","X","Y","Z"]);
for(var i = 0; i < csv_list.length; i++) {
sheet.cells(i + 1, 1).value = csv_list[i][0];
sheet.cells(i + 1, 2).value = csv_list[i][1];
sheet.cells(i + 1, 3).value = csv_list[i][2];
sheet.cells(i + 1, 4).value = csv_list[i][3];
}
})
0289デフォルトの名無しさん垢版2018/08/26(日) 16:47:59.21ID:IHxJX3F+
>>288
お前がやるんや
0292デフォルトの名無しさん垢版2018/08/26(日) 18:01:16.22ID:4ngh3oqJ
>>257
バーカ。
5分が20分になっても、全く時間なんて使ってないというぐらいだ。
まともにプログラム組んだこと無いか、誰でもできるルーチンワ―クしか書いたことないんだろ。
仕事で組んでる時だって上手いアイデア出すのに長い時間使って、15分節約できたことなんて何の意味も無い。
0295デフォルトの名無しさん垢版2018/08/26(日) 18:10:19.11ID:53MEpRMM
>>292
バーカ
アイデア出すのに時間を最大限使いたいからくだらん仕事は可及的速やかに終わらせるんだよ
VBAなんかに時間使ったら頭使う時間もエネルギーも勿体なさすぎ

これプログラマの常識よ?
世の中みんなくだらん仕事はできるだけ楽にしてクリエイティブな仕事に時間体力金を使おうって考えてんの
クソやりにくい言語で自らを縛って車輪の再発明を繰り返す変人なんて相手にもされんわ
0298デフォルトの名無しさん垢版2018/08/26(日) 18:27:27.81ID:H+C43I2p
>>284
それってさ、
「VBA自体の機能は弱いけどオレオレライブラリを充実させているからいいんです!」
ってことじゃない?
そんなの俺だってそうだよ!

なにが言いたいかというと特にないです。
0299デフォルトの名無しさん垢版2018/08/26(日) 18:33:57.92ID:4ngh3oqJ
>>295
だからバカなんだよ。
どうせお前はどんだけ時間使ったってアイデアなんて出ないだろう。
そういう問題だ。

そもそも、いくらだってもっと技術的に高度で、VBAでやるのは大変な例なんていくらでも有りそうなもんだが、こんな腐った例しか出せないところが、お前にアイデアなんて出せそうも無いことを物語ってる。
0300デフォルトの名無しさん垢版2018/08/26(日) 18:37:11.70ID:45EuRAle
俺はこんな簡単な仕事をやる人間じゃない(やらない)
もっと難しい仕事をやるべき人間だ(やらない)



いつまでたってもやれない
0301デフォルトの名無しさん垢版2018/08/26(日) 18:41:01.67ID:NdNCtt3a
VBAでもヲタが力んでWindows APIやクラスモジュール使い倒してるのはたまに見るな

マクロで何粋がってるんだ?という
0302デフォルトの名無しさん垢版2018/08/26(日) 18:42:42.82ID:IHxJX3F+
>>301
マクロはお嫌いですか?
0303デフォルトの名無しさん垢版2018/08/26(日) 18:42:43.76ID:45EuRAle
>>299
こんだけ具体的なコードが出てる中でサクッとコードを晒せないお前はどんな演説しても語るに落ちてる
0304デフォルトの名無しさん垢版2018/08/26(日) 18:44:38.87ID:IHxJX3F+
>>303
コード出すんはお前や
0305デフォルトの名無しさん垢版2018/08/26(日) 18:45:09.67ID:53MEpRMM
>>299
お前は、アイデアなし、他言語使えない、頼みの綱のVBAですらコード書けない
バカ三冠王じゃねえか!おめでとう!
0307デフォルトの名無しさん垢版2018/08/26(日) 18:46:46.98ID:IHxJX3F+
>>306
さようか
0309デフォルトの名無しさん垢版2018/08/26(日) 20:07:21.75ID:Gz818OEG
まったく、つまらんコードでアホ丸出しだ。
俺はこういう馬鹿ではないのでちょっと面白いコードを出してやる。
結構前のことだが画面上に、あるピクセルを指示する何かを置いておきたいって、
質問(要望)があってその時にプロトタイプ的にサラッと書いたものだ。
機能的に不十分でやっつけだからその時は提示しなかった。

https://pastebin.com/W2utMzUM

俺が思うに.netが使えれば、もっと完成度が高く高機能なものを
簡単に作ることが出来るはずだ。
なんでこういうのを比較に出さないのかということだ。
0310デフォルトの名無しさん垢版2018/08/26(日) 20:18:51.49ID:Gz818OEG
それから、>>243はdbからcsvで抜いた300万件のデータと言ってるな。
これまで提示されたコードだと結構時間がかかると思うぞ。
俺の時は数千万のデータだったが最初に書いたコードではVBAで6時間ぐらい
掛かりそうだった。
で、コアを5〜6個使って1時間程度に短縮した。

プロさんは相手と交渉できるんだろ。
dbに計算させた方が明らかに速いだろう。
0311デフォルトの名無しさん垢版2018/08/26(日) 21:00:16.42ID:2yDRx5ys
>>309
アイデアもコードもつまらないものだったけどそのレスには爆笑した
確かにクリエイティブな才能(例えばコメディアンなどの)があるようだね
0312デフォルトの名無しさん垢版2018/08/26(日) 21:05:12.64ID:YE41eTAF
>>309
いやそんな誰が書いたかもよくわからんコードじゃなくて>>79を貼れよ…
要件もわからんコード出されても評価のしようがねえよ…馬鹿なのか…
0313デフォルトの名無しさん垢版2018/08/26(日) 22:18:54.66ID:4ngh3oqJ
>>311
悔しいからって犬の遠吠えですか?

フォームをクラスみたいに使う方法を知らないVBAユーザーは結構いるだろう。
お前のコードのように、見た瞬間に出来ると思うようなものじゃ無いんだよ。

それに、このコードにある機能を追加しようとしたら途端に難しくなる。
C#だったら簡単な筈だからPowerShellでも難しく無いだろう。
Excelも関係ないし、VBAでやるべきじゃない例としてはお前の挙げた例なんかよりよっぽど適切だ。
0314デフォルトの名無しさん垢版2018/08/26(日) 22:25:22.52ID:4ngh3oqJ
>>312
そんな誰でも出来るくせに仕事で書くようなコード書いて何が楽しいんだ?
仕事じゃねえんだからもっとおもしろいもん作れや。

俺の書いたそんなに高度じゃ無いもので、その割にアイデアが無いと出来ないようなのをな。
0315デフォルトの名無しさん垢版2018/08/26(日) 22:37:30.85ID:FkpCoYCZ
問題が面白いかの話なんて誰もしてないよ
Excelが絡むある作業をどう書くのかという話をしてるんだよお前以外は
早く>>79のコード晒さないと口だけの奴だと思われるぞ
もう遅いかもしれないけど
0316デフォルトの名無しさん垢版2018/08/26(日) 22:41:40.76ID:IHxJX3F+
Microsoftの煽り営業やろな
0317デフォルトの名無しさん垢版2018/08/26(日) 23:02:51.18ID:4ngh3oqJ
>>315
どんなコードを書いてるかを見れば、そいつにそれが出来るレベルにあるかなんてすぐわかる。
だから俺が書く必要はないだろう。

それに、どっかのアホが既にVBAで書いてるだろ。
どうせ似たようなもんになるだけだろう。

そうだな、俺ならFileSystemObjectを使わずにブックのOpenもしない。
csv読み込んで演算するなら古いテキストのOpenで開いてやった方が速いと思う。
スピードを考えるならBinaryでひらいてStrconvを使うかな。
Dictionaryも使わないんじゃないかな。
クラスも使わない。
クラスを作るのにピッタリ来る処理とは思わないから。
まあ、だからといってアホのコ―ドが駄目かといえばそんなことは無い。
俺が見るに趣味の問題。

だが、つまらん作業に時間を使いたく無いからこんな処理のコードは書かん。
0321デフォルトの名無しさん垢版2018/08/26(日) 23:37:21.82ID:53MEpRMM
質問に答えられないからってドーナッツ作って話をはぐらかそうとする奴が居るらしいんだがマジか?
0323デフォルトの名無しさん垢版2018/08/26(日) 23:49:07.52ID:4ngh3oqJ
>>321
君は言動を見ると、そもそもプログラム書けないんじゃないか?
どの発言みても、レベルが高いようにはとても見えない。

例えば、俺がアホと呼んでる>>263だってコード見れば結構レベルが高いことなんてすぐ分かる。
人のコード見てそんなことも読み取れないんじゃ話にならん。
0324デフォルトの名無しさん垢版2018/08/26(日) 23:53:29.34ID:YE41eTAF
長文書く暇はあるのに15分で書けるコード(rubyの場合。テスト用csvファイルの作成などを含む)を
何故さっさと書かないのかコレガワカラナイ
0326デフォルトの名無しさん垢版2018/08/27(月) 00:01:09.25ID:j6hbWA4v
ドーナツの方がすごいと思ったけどね僕は
0327デフォルトの名無しさん垢版2018/08/27(月) 00:01:41.55ID:0VuCVsh0
最高レベルのドーナッツ職人とコメディアンの二足のわらじは大変そうだなあ
そりゃコード書けなくなるわ忙しいもんな
0328デフォルトの名無しさん垢版2018/08/27(月) 00:02:21.90ID:wSgDz8cK
>>320
>>321
ドーナッツやない、ドーナツや
ウェブをウェッブと言うようなものやで
キスをキッスと言うようなものやで
昭和のおっさんか
0330デフォルトの名無しさん垢版2018/08/27(月) 00:12:00.78ID:e5NQDqcO
アホが何を言って煽ろうが、書かないと宣言したもんは書かん。
それに、それなりにスキルのある奴はコードを見ればレベルもわかる筈だ。
0332hoge垢版2018/08/27(月) 00:18:03.80ID:rO/r14zS
>>323
PowerShellerなんかに褒められて、わ〜い♪褒められた〜♪と内心喜んでる俺がいる。
が、それは置いといて俺のVBAは準備含めて30分くらい。
(32行に収まらなくて調整するのに10分くらいかかったけども)
0334デフォルトの名無しさん垢版2018/08/27(月) 00:22:49.76ID:uGiTpI0n
>>330
そもそもお前が勝手に問題作ったらお前が書いたコードかどうかも怪しいんだよ
そんなこともわからんのかコードが書けないスキルの無い奴は
0335デフォルトの名無しさん垢版2018/08/27(月) 00:25:28.83ID:e5NQDqcO
>>332
君がPowerShellerじゃ無いのか?
「VBAerの人頑張って最適化して?」とか
「やりたい命令がちゃんと用意されてるのはいいなぁ。」とか書いてるし。

それとも、まんまとPowerShellerの口車に乗せられて、コード書いたんか?
0336デフォルトの名無しさん垢版2018/08/27(月) 00:27:32.81ID:e5NQDqcO
>>334
だったら、もっとおもしろいお題を出すんだな。

それに、コード晒さなくてもこれまでの言動からすぐ分かるだろ。
0339デフォルトの名無しさん垢版2018/08/27(月) 00:31:39.75ID:e5NQDqcO
>>337
お前が碌に書けないのはすぐ分かる。

スキルのある奴なら>>317を読めば最低でも多少は書ける奴だとすぐ分かるんだよ。
0340hoge垢版2018/08/27(月) 00:31:43.24ID:rO/r14zS
>>335
生粋のVBAerだけど素人なので、仕事で使ってるVBAer任せた!ってつもりなのでした。
昼食後の昼寝前に暇だったから、誰も投稿しようとしないコードを上げたらどうなるのかなと・・・
口車に乗せられたってのは間違いないかもね!
0341デフォルトの名無しさん垢版2018/08/27(月) 00:33:43.59ID:0VuCVsh0
これまでの言動から初心者レベルのWinapiを使った面白(?)アプリで有頂天になれる強い自尊心の持ち主ということはわかりました
どんな苦境でも前向きに物事を考えられるその人間性はとてもスゴイことだと思います
0343デフォルトの名無しさん垢版2018/08/27(月) 00:36:26.47ID:rO/r14zS
>>340
あああわわわ・・この表現だと仕事で使ってないみたい。
会社でコソっと使ってるけど、これで御飯食べてるわけじゃないのでバリバリ使ってる人ならと・・・
0344デフォルトの名無しさん垢版2018/08/27(月) 00:39:17.06ID:e5NQDqcO
結局、PowerShellは大したことできんと証明するようなお題なんだからな。

大したことできるというお題だって提示できた筈なんだ。
それでも、VBAじゃやらない処理だという反論も出来る場合もあるだろう。
でも、俺が見てもどうにもならんからそれだったらC#でやるというものもある。
0345デフォルトの名無しさん垢版2018/08/27(月) 00:42:48.53ID:TXKBjdm9
>>340
あなたのコード見ていっちょrubyでも書いてみるかってなったから先陣を切ったのは偉い
素人でもなんでも実際に動くコードが良いコードだ
0347デフォルトの名無しさん垢版2018/08/27(月) 00:46:16.71ID:0VuCVsh0
>>345
確かに偉い
言い訳ばかりでなんにもコード書かないくせに自信だけはたっぷりの勘違いくんに爪の垢を煎じて飲ませてあげたいね
0348デフォルトの名無しさん垢版2018/08/27(月) 00:47:37.11ID:wSgDz8cK
>>329
おいお前、Export-Excelを使う方法を教えろ
Windows 7、PowerShell 4だ
0350hoge垢版2018/08/27(月) 00:49:47.79ID:rO/r14zS
>>348
あ、私も知りたい。
自信満々に上げてくれた>>90を検証したいのにエラー出てくる。
こっちはWindows 10だ
0351デフォルトの名無しさん垢版2018/08/27(月) 00:50:38.17ID:wSgDz8cK
なんか派閥が形成されててキモい
自分以外は全部敵だと思え、馴れ合う君たちに価値などない
0352デフォルトの名無しさん垢版2018/08/27(月) 00:51:36.40ID:wSgDz8cK
>>349
その箇所を引用しろハゲ、横着すんな
0353デフォルトの名無しさん垢版2018/08/27(月) 00:55:17.33ID:rO/r14zS
>>352
そこまではわかった。
ダウンロードしたフォルダで>>90を実行すると、こうなるけどどうしたらいいの

PS C:\Users\hoge\Downloads\ImportExcel-master> gci . -Recurse -Filter *.csv | % { ipcsv $_ } | % { $_ | Add-Member -Pass
Thru -MemberType NoteProperty D ([math]::sqrt([math]::pow($_.X, 2) + [math]::pow($_.Y, 2) + [math]::pow($_.Z, 2))) } | S
ort-Object D -Descending | Export-Excel -Now
Export-Excel : 用語 'Export-Excel' は、コマンドレット、関数、スクリプト ファイル、または操作可能なプログラムの名前とし
て認識されません。名前が正しく記述されていることを確認し、パスが含まれている場合はそのパスが正しいことを確認してから、
再試行してください。
発生場所 行:1 文字:221
+ ... th]::pow($_.Z, 2))) } | Sort-Object D -Descending | Export-Excel -Now
+ ~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (Export-Excel:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
0354デフォルトの名無しさん垢版2018/08/27(月) 00:56:47.08ID:wSgDz8cK
>>353
あ、わかったんだナイス
0356デフォルトの名無しさん垢版2018/08/27(月) 00:59:49.33ID:wSgDz8cK
>>355
だからお前がどうやったのかを言えや
0357デフォルトの名無しさん垢版2018/08/27(月) 01:00:55.38ID:rO/r14zS
>>354
>>355
わざわざExport-Excel.ps1の入ってるフォルダで>>90を実行しているのにコレが出るから悩んでいる。
dllみたいにsystem32へ保存しないとダメとかなんかルールあるんけ?
0360デフォルトの名無しさん垢版2018/08/27(月) 01:17:54.97ID:kP3VgsYY
そこに書かれてる
Install-Module ImportExcel -scope CurrentUser
を実行するとこんな感じだった。
---
PS C:\Users\hoge> Install-Module ImportExcel -scope CurrentUser
続行するには NuGet プロバイダーが必要です
PowerShellGet で NuGet ベースのリポジトリを操作するには、'2.8.5.201' 以降のバージョンの NuGet
プロバイダーが必要です。NuGet プロバイダーは 'C:\Program Files\PackageManagement\ProviderAssemblies' または
'C:\Users\hoge\AppData\Local\PackageManagement\ProviderAssemblies'
に配置する必要があります。'Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force' を実行して NuGet
プロバイダーをインストールすることもできます。今すぐ PowerShellGet で NuGet
プロバイダーをインストールしてインポートしますか?
[Y] はい(Y) [N] いいえ(N) [S] 中断(S) [?] ヘルプ (既定値は "Y"): y

信頼されていないリポジトリ
信頼されていないリポジトリからモジュールをインストールしようとしています。このリポジトリを信頼する場合は、Set-PSReposit
ory コマンドレットを実行して、リポジトリの InstallationPolicy の値を変更してください。'PSGallery'
からモジュールをインストールしますか?
[Y] はい(Y) [A] すべて続行(A) [N] いいえ(N) [L] すべて無視(L) [S] 中断(S) [?] ヘルプ (既定値は "N"): y
PS C:\Users\hoge>
0363デフォルトの名無しさん垢版2018/08/27(月) 01:26:56.53ID:wSgDz8cK
>>357
Install-Moduleはオンラインギャラリーからインストールするもので


ローカルのモジュールをインストールするのは↓これでいけるかも

about_Modules
https://technet.microsoft.com/ja-jp/library/hh847804.aspx

モジュールのフォルダを自分で作って
そこにモジュールを放り込んで
Import-Moduleやるみたいよ
0364デフォルトの名無しさん垢版2018/08/27(月) 01:27:16.96ID:1GtV5xun
c;\aaa\bbb\ccc.xls
c;\aaa\AAAAAAA\cccaaaa.txt
みたいに
二つ目のフォルダの階層だけを取得したい場合
どうすればいいのでしょうか?
上記ならbbbとAAAAAAAです

StrReverse関数はあくまでも右から見て最初の\以降しか取れません。
0365デフォルトの名無しさん垢版2018/08/27(月) 01:30:06.85ID:wSgDz8cK
>>361
それでわかるわけないだろ、品川に行くにはと聞いてる人に関東だと答えてるようなもんでしょうが
0366デフォルトの名無しさん垢版2018/08/27(月) 01:30:57.18ID:wSgDz8cK
久しぶりにVBAのまともな質問が
0368デフォルトの名無しさん垢版2018/08/27(月) 01:38:48.56ID:rO/r14zS
とりあえず、ps1は絶対パス指定じゃないと動かないらしいことがわかったので
フルパス指定したら先のエラーは突破できたけど、どこのフォルダに保存されたcsvも
>ファイル 'C:\test\1.csv' が見つかりませんでした。
って出て読み込んでさえくれない。

>>363 の方法でなんかすれば動くのかな・・・
とりあえず今日は諦めるわ
0369デフォルトの名無しさん垢版2018/08/27(月) 01:40:41.81ID:wSgDz8cK
明日は良いことあるよ
0370デフォルトの名無しさん垢版2018/08/27(月) 01:42:28.19ID:GTSRIP0x
VBAってファイルを開いてコピーしてペーストして閉じるぐらいのもんじゃないの?
何をこんな難しい話をしてるんだ??
0371デフォルトの名無しさん垢版2018/08/27(月) 01:50:26.83ID:rO/r14zS
>>364
2つ目のフォルダって、最下層から二つ目って意味じゃないかな?

Sub hoge()
Const sample1 = "c;\aaa\bbb\ccc.xls"
Const sample2 = "c;\aaa\AAAAAAA\cccaaaa.txt"

Dim s() As String
s = Split(sample1, "\")
Debug.Print s(UBound(s, 1) - 1)

s = Split(sample2, "\")
Debug.Print s(UBound(s, 1) - 1)
End Sub
0372デフォルトの名無しさん垢版2018/08/27(月) 02:12:40.91ID:ba8BcfX3
>>357
PS で、カレントフォルダ以下を再帰的に、すべての .txt を取得する。
まずcd で、作業フォルダへ移動してから、実行して

$files = ( ls . -Recurse -Filter *.txt )

$files | % { echo $_ }
$files | % { echo $_.fullname }

上は、パス無しのファイル名のみで、下は、フルパス付きのファイル名になる。
ファイル名だけよりも、フルパスにした方が無難

% -> ForEach-Object の、alias だから、以下みたいにも書ける

foreach ( $file in $files ) { echo $file.fullname }
0375デフォルトの名無しさん垢版2018/08/27(月) 07:26:14.29ID:wSgDz8cK
>>374
もはや解いたも同然と言っても過言ではない
0376デフォルトの名無しさん垢版2018/08/27(月) 07:27:36.94ID:wSgDz8cK
>>374
あの、ところでテーブルレイアウトってどういう意味でしょうか?
0377デフォルトの名無しさん垢版2018/08/27(月) 07:28:16.57ID:wSgDz8cK
テーブルレイアウトがこの問題の一番重要なところですよね
0378デフォルトの名無しさん垢版2018/08/27(月) 07:31:29.58ID:kP3VgsYY
元々が「イミディエイトウィンドウで」なので
Excelブックのシートに展開することを指しているんだろうとエスパー
0379デフォルトの名無しさん垢版2018/08/27(月) 07:36:38.49ID:wSgDz8cK
>>378
そういうことね、あざっす!
0380デフォルトの名無しさん垢版2018/08/27(月) 07:37:03.43ID:wSgDz8cK
謎はすべて解けた
0381デフォルトの名無しさん垢版2018/08/27(月) 08:14:42.64ID:e5NQDqcO
そもそも、MS謹製じゃない誰かの作ったライブラリ使って1行で書いて自慢するというんじゃね・・・
それって>>263>>275の書いたコードを呼び出す1行のコードでも良いってこと?
0384デフォルトの名無しさん垢版2018/08/27(月) 08:53:07.17ID:e5NQDqcO
>>383
無理矢理こじつけて面白いとでも思ってる?
先のコードを見れば、MSのdllしか使ってないのはすぐ分かると思うのだが。
つまり、無理矢理なのは明らか。

それともそんなことも分からない程スキルが無いのかな?
0388デフォルトの名無しさん垢版2018/08/27(月) 09:47:37.36ID:G+Xbl5zq
標準でいろんな機能が備わってるか、という基準でならVBAのボロ負け
ってことは皆さん承知でいいんだよね?
0398デフォルトの名無しさん垢版2018/08/27(月) 11:40:35.85ID:WsFyAGZ6
>>395
VBAは他所でスレ立ててやれ
0400デフォルトの名無しさん垢版2018/08/27(月) 12:13:16.68ID:6WD1A1gz
>>309
>俺が思うに.netが使えれば、もっと完成度が高く高機能なものを
>簡単に作ることが出来るはずだ。
>なんでこういうのを比較に出さないのかということだ。

ここを読むと技術力の低さが露呈していることがハッキリする
ドーナツアプリを見たがこの程度ではこれを.NETでやっても大きく差はつかない
せいぜい、運が良ければAPIじゃなくてマネージドな部品が用意されてるかもね、程度

>>79はみごとだ
標準のコレクションやライブラリの貧弱さ
ラムダ式の未サポートなどモダンな言語機能の欠如など
VBAの弱点をしっかり捉えた題材と言える
実際に勇気あるVBAerがコードを晒したがPSで書いた時とは全く異なる長ったらしい読みにくいコードだった
題材が的確だから結果にも大きな差がついた
オマケにVBAとは違って強力なライブラリや言語機能を備えたRubyがPSと同じく短くエレガントなコードになったことがこの事実をさらに後押ししている
0401デフォルトの名無しさん垢版2018/08/27(月) 12:22:32.82ID:UYbrAfc/
>>400
最後にテーブルにするというExcelに寄り添いつつも実用性のある操作を加えることで
決してVBAだけに不利な条件にもしないという隙の無さもポイント高い


(ところでPSのやつ最後テーブルになってるようには見えないんじゃが...)
0402デフォルトの名無しさん垢版2018/08/27(月) 12:22:46.12ID:LISH444j
ルビーは実行環境インスコせなあかんし
池沼シェルはモジュールをインターネッツから
インスコせなあかん、それがネックやな
0404デフォルトの名無しさん垢版2018/08/27(月) 12:24:47.83ID:LISH444j
>>401
そこに気づくとは
パワシェルは要件を満たしてないオナヌーコードに成り下がってる
簡単さにこだわる余り目的を見失ってる
0406デフォルトの名無しさん垢版2018/08/27(月) 12:29:16.75ID:LISH444j
要件を満たして正確に動作すること
これが第一、その上で簡単に書けたら良いよねが来る
簡単に書けました、ただし要件は満たしませんでは駄目なのさ
0407デフォルトの名無しさん垢版2018/08/27(月) 13:30:20.91ID:osQmxFgv
>>401
と思ったけど-Nowオプション付けるとテーブル(というかフィルター?)になるのか
早とちりだった

-TableNameでテーブルになるのかな?
0409デフォルトの名無しさん垢版2018/08/27(月) 18:38:58.42ID:e5NQDqcO
>>400
はあ、どうしてケチをつける割に人の話を聞かない奴ばかりなんだ?
あれをそのままで.netの方が良いなんて言って無いんだよ。
0411デフォルトの名無しさん垢版2018/08/27(月) 18:54:44.25ID:e5NQDqcO
分かりやすいのは他言語のコードを見ても全く、使おうとは思わない点だ。
VBAで何の問題も無いとしか思えない。
所詮、そんなコードだということ。
0412デフォルトの名無しさん垢版2018/08/27(月) 19:01:40.79ID:gPVC/qB6
その点ドーナツは凄いよな
俺も今やってる仕事でVBAでドーナツ使いたいわ
そんな魅力がドーナツのコードにはある
0414デフォルトの名無しさん垢版2018/08/27(月) 19:25:45.86ID:gPVC/qB6
>>413
日本語読めない子扱いされてるのがそんなに悔しいの??

わざわざ日本語弱いとか煽ってくるとかwww
人間自分が言われて嫌なことを悪口に使うって聞いたことない??
0416デフォルトの名無しさん垢版2018/08/27(月) 20:11:11.67ID:e5NQDqcO
>>414
根拠も何も無い、論理的に間違っていてもまともに反論も出来ない、そういう奴だから日本語が弱いと言われても仕方がないだろう。

お前は何ーつ反論していない。
反論出来ないということだろう。
0418デフォルトの名無しさん垢版2018/08/27(月) 20:29:58.31ID:gPVC/qB6
>>416
おっそうだな
それ鏡に向かって言ってごらん?
それだけでかなり日本語能力が改善されると思うよ?
0420デフォルトの名無しさん垢版2018/08/27(月) 21:49:35.20ID:9BbUG3+I
このスレはいつからバカの楽園になったんや
0422デフォルトの名無しさん垢版2018/08/27(月) 22:39:23.01ID:iFAlBQzj
例えば無数にあるエクセルファイルからそれぞれ読み取ってデータを集計する際、どう処理するのがベター?
速度気にするならデータベース?
0424デフォルトの名無しさん垢版2018/08/27(月) 23:10:27.18ID:9BbUG3+I
速度は気にするなと何度言えば
0425デフォルトの名無しさん垢版2018/08/28(火) 06:28:16.68ID:3670nM1R
>>423
形式は統一されてるとして同じ作業を繰り返えさせるのはどうするのがベターなのかなって。
>>424
やっぱ普通に開いて閉じるの繰り返しか。
0426デフォルトの名無しさん垢版2018/08/28(火) 07:08:49.90ID:HTwoJr4W
>>425
形式が統一されてるならSQL
{Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)}
0427デフォルトの名無しさん垢版2018/08/28(火) 08:14:03.75ID:iD8sZg5y
そもそも、その内容だけを見た時にVBAでやる必要有るのか?とも思う。
好きなの使え。
それに、その程度のことでどれがベターとか考えるか?
コード見て、こりゃダメだと思うようなの書いて無い限りどんなのでも良いだろ。

スピード優先な処理なのに1つずつセルに入れてるようなのはダメだが、処理に時間がかかってダメだという状況じゃなかったら別にどうでも良いし。
0429デフォルトの名無しさん垢版2018/08/28(火) 08:55:27.62ID:TEJeUOom
Ruby なら、こういう感じで、フォルダ以下を再帰的に処理できる

Dir.glob('C:/Users/Owner/Documents/Ruby/test/**/*.txt') do |file|
next if File.directory? file # ファイルだけを処理する

# 処理
end
0434デフォルトの名無しさん垢版2018/08/28(火) 09:17:55.83ID:TEJeUOom
Excel は環境構築がいらない。
Excelが実行環境だから

だから、Excelエンジニア(ノンプログラマー)は、Excelを使う

ところが、そこへ本格的なプログラミングを頼む者が現れるが、
プログラミング技術がないから、Excelで作ろうとする

案件と使う技術の不一致!
0435デフォルトの名無しさん垢版2018/08/28(火) 11:09:00.30ID:tL+eufN4
仮想マシンでwindowsからセットアップしなきゃならん
インストールしてからもマクロ許可の設定しなきゃだし
手間も金もかかる
0437デフォルトの名無しさん垢版2018/08/28(火) 12:01:55.63ID:HQDFIjl0
パソコンとはWindowsとMicrosoft Officeが動くもののことである
WindowsとMicrosoft Officeが動かないマシンなどこの世には存在しない
してはならない
0440デフォルトの名無しさん垢版2018/08/28(火) 12:21:23.11ID:iD8sZg5y
>>437
根本的に勘違いしてる。
別にOfficeが動かないマシンが有っても構わない。

けど、ここはExcelVBAのスレだからExcelが動く環境の人が質問する所だ。
Officeが動かない人がここで何をするんだ?
0441デフォルトの名無しさん垢版2018/08/28(火) 12:25:28.24ID:1gf7K+E/
Officeの入ってない管理者用PCでリモートPCのOfficeをいじるときにCOM経由でVBAのコードを動かすこととかあるよね
0444デフォルトの名無しさん垢版2018/08/28(火) 12:51:08.91ID:iD8sZg5y
>>441
う〜ん、それこそVBAじゃ無くても良いような気がする。
既に出来てるコードを動かすという点で新たに組む必要が無いという理由が、あるいは他にも事情があるのかもしれないけど。

でも、そもそもExcel入って無くてインスタンス作れるか?
0446デフォルトの名無しさん垢版2018/08/28(火) 20:34:26.56ID:og1ij5ZD
RubyバカはRubyのスレに逝けよ。Rubyのスレでは俺はRubyが使えるんだエラいんだって自慢できないからここに
いすわってんのか?
0447デフォルトの名無しさん垢版2018/08/28(火) 21:17:25.35ID:Jta+sf2j
>>445
インスタンスはリモート側で作らせればいい
管理者側はリモート側のプロセスをモニターするだけ
0449デフォルトの名無しさん垢版2018/08/29(水) 00:00:56.70ID:saiWj2Qp
Office は高いから、入れていない

Ruby で処理して、VSCode のExcel Viewer で見たりする
0450デフォルトの名無しさん垢版2018/08/29(水) 00:52:26.56ID:UxZZ4olJ
csv開いて取り込む方法だけでも色々あるのね

openfileで開いて1行ずつ読み込んで、カンマ区切りでセルごとに格納するって方法もあれば、csvファイルをエクセルとして開いて配列に格納する方法もあった
0452デフォルトの名無しさん垢版2018/08/29(水) 02:50:31.20ID:P8cf8NAK
こんなスレまだあるんだな
しかも結構人多いのに驚いたw
VBAっていうかExcelって需要あるんだね

でも仕事でやれって言われたらストレス溜まりそうだな
基本的にGUIが貧弱なVB6だよね

10年ぐらい前に必要に迫られてちょっとだけ触ったけど
C#に慣れた身には死ぬほど不便に感じたわ
0453デフォルトの名無しさん垢版2018/08/29(水) 05:52:17.26ID:w2kFCGmb
>>452
じゃあC#スレいけば?
0454デフォルトの名無しさん垢版2018/08/29(水) 07:37:37.34ID:+pRcq4Dh
買えないならLibreOfficeがいいね
Excelとあまり遜色ない
BASICやpythonもサポートされてる
金出してでもネームバリューが欲しいならエクセル
0456デフォルトの名無しさん垢版2018/08/29(水) 12:32:06.57ID:w2kFCGmb
>>455
このくらいの意味もわからんとはかわいそうなやつだな
0460デフォルトの名無しさん垢版2018/08/29(水) 20:18:54.82ID:F6DjsKzv
C# スレでフルボッコでもされた憂さ晴らしに来たらこっちでもハブられてるって話だろ w
0462デフォルトの名無しさん垢版2018/08/29(水) 21:06:11.30ID:lmwWHcLE
嫉妬心を妄想してご満悦のC#パーwww
0464デフォルトの名無しさん垢版2018/08/29(水) 21:28:17.54ID:lmwWHcLE
謎の仮想敵と戦いだしたC#パーさんwwww
0465デフォルトの名無しさん垢版2018/08/29(水) 23:48:22.85ID:GV74TfHv
まあわざわざこんなスレにまで来る時点でどっちが嫉妬してるんだよ
って話だわな w
0466デフォルトの名無しさん垢版2018/08/30(木) 19:12:27.15ID:syYDPcaO
昔はMSSoapとかいう便利なSoapクライアントが標準で入ってたと思うんだがwin7にはないのか?
いまどきのVBAだとどうやって標準だけでsoap serverに接続すんの?
0468デフォルトの名無しさん垢版2018/08/30(木) 23:32:23.93ID:vfQLhMIk
そもそもVBAの質問スレなのにVBAを叩く人が多いのは何でなの?そのお気に入りの言語のスレでVBAを叩けば良いのでは?
0469デフォルトの名無しさん垢版2018/08/30(木) 23:55:29.15ID:8BVm6oqP
VBA使いに何故か頭のおかしい人がいっぱいいるから
頭のおかしい人は叩かれやすいから
0470デフォルトの名無しさん垢版2018/08/31(金) 00:09:07.74ID:KNbvu5CI
>>469
統計とったん?
頭がおかしいのはもしかして・・・
0472デフォルトの名無しさん垢版2018/08/31(金) 00:18:46.09ID:hdsvUljL
>>467
いろいろ呼び寄せてる感じだなw
0475デフォルトの名無しさん垢版2018/08/31(金) 06:20:03.94ID:KNbvu5CI
>>471
統計取る人の方が頭おかしいんじゃないかって
言おうと思ってたの
なんで・・・
0476デフォルトの名無しさん垢版2018/08/31(金) 06:20:39.05ID:KNbvu5CI
これがレイトバインディング
0480デフォルトの名無しさん垢版2018/08/31(金) 15:15:07.22ID:crIwABeX
昔のVB6とVBAの互換性くらいの頃が良かったな
.NETの非接続型のデータセットもVBAでサポートしてほしい
0482デフォルトの名無しさん垢版2018/08/31(金) 20:19:26.35ID:9BvJl+C0
vbaて最近やと難しい言語に入るからなw
ヤワな言語かじってプログラミング出来ると勘違いしとるバカが
「ルビーを使いこなせるボクが手も足も出ないvbaなんかクソに決まっとる」
言うて駄々こねとるんも無理ないわなw
0483デフォルトの名無しさん垢版2018/08/31(金) 21:19:08.90ID:ysQtJERX
セルを参照するrangeの仕様を見直せ

たとえばA1と指定すればA1だが、1Aと指定しても列がAで、行が1だということが分かるだろ。そのくらい内部で読み替えせないか?
仕様として、本当に、おかしい
0484デフォルトの名無しさん垢版2018/08/31(金) 21:22:27.52ID:ysQtJERX
逆だった。要は、A1でも1Aでも同じことだろと言いたかった
0485デフォルトの名無しさん垢版2018/08/31(金) 21:25:10.15ID:9BvJl+C0
>>483
バカは仕様とか考えん方がええでw
0486デフォルトの名無しさん垢版2018/08/31(金) 21:26:47.70ID:4ZfpOo1s
通常トークンの先頭が数字なら数値のリテラルと解釈する
先頭が数字を許す数値以外のトークンは通常ない
だれもいちいち面倒なことはやらない

わかった?
0487デフォルトの名無しさん垢版2018/08/31(金) 21:29:55.95ID:9BvJl+C0
>>486←トークン言ってみたかったプロさんwwwww
0488デフォルトの名無しさん垢版2018/08/31(金) 21:32:14.11ID:4iUWs/UZ
昔はMSSoapとかいう便利なSoapクライアントが標準で入ってたと思うんだがwin7にはないのか?
いまどきのVBAだとどうやって標準だけでsoap serverに接続すんの?
0489デフォルトの名無しさん垢版2018/08/31(金) 21:32:35.78ID:4ZfpOo1s
オレはプロフェッショナルだからな
クソニートや低学歴知恵遅れがでる幕はない
0490デフォルトの名無しさん垢版2018/08/31(金) 21:40:12.02ID:KNbvu5CI
>>487
おいおまえ、トークンできとるか?
0491デフォルトの名無しさん垢版2018/08/31(金) 21:43:18.00ID:9BvJl+C0
>>490
あいにくプライベートな質問はお断わりしとるもんでw
0492デフォルトの名無しさん垢版2018/08/31(金) 22:02:50.64ID:ysQtJERX
>>486
>だれもいちいち面倒なことはやらない
トークンもリテラルも理解できないが、1行で改修できるようなもんだろ
それを面倒とはいかに。
0494デフォルトの名無しさん垢版2018/08/31(金) 22:28:50.60ID:4ZfpOo1s
=E1+1 ← セーフ
=1E1+1 ← セーフ
=1E+1 ← セーフ

コレ
どうしてくれんの?
0495デフォルトの名無しさん垢版2018/08/31(金) 22:39:08.66ID:9BvJl+C0
>>494←アドレスと数式の違いがわからないプロさんwwwww
0496デフォルトの名無しさん垢版2018/08/31(金) 22:42:48.14ID:4ZfpOo1s
1E+1

コレ普通に指数表記の数値リテラルだからな
まともな教育を受けてない低学歴知恵遅れには縁がない

どんな高級言語でも普通にほとんどサポートされてる
0497デフォルトの名無しさん垢版2018/08/31(金) 22:49:21.84ID:4ZfpOo1s
=E1+1
=1E1+1
=1E+1

低学歴知恵遅れは一度コレをエクセルのセルに入力してみればいい
低学歴知恵遅れではきっとなんでそんなことになるのか理解できない

意味が分かってないっからな
0498デフォルトの名無しさん垢版2018/08/31(金) 22:52:11.56ID:9BvJl+C0
>>497←もはや色んな事が逸脱しすぎてもうとるプロさんwwwwww
0499デフォルトの名無しさん垢版2018/08/31(金) 22:52:34.92ID:4ZfpOo1s
低学歴知恵遅れにはハジというもんがない
0500デフォルトの名無しさん垢版2018/08/31(金) 22:53:59.15ID:4ZfpOo1s
低学歴知恵遅れは自分がいかに低学歴知恵遅れで
自分が人間未満のゴミクズ人間という自覚がない

そして自己評価だけは高い

こういうのは
低学歴知恵遅れのクソニート、底辺ITドカタに多い
0502デフォルトの名無しさん垢版2018/08/31(金) 22:55:34.90ID:9BvJl+C0
>>500←低学歴のクソニートと底辺TIドカタを兼ねそなえてるプロさんwwwwwwwww
0503デフォルトの名無しさん垢版2018/08/31(金) 22:57:35.02ID:4ZfpOo1s
バカはバカの自覚がないからな
どんだけバカで愚かな人間かという自覚すらない

バカは自分がバカで愚かな人間ということに気づくことはできない

そして、一生、その自覚がないまま
バカでゴミクズな人間のまま終わる

わかった?
0504デフォルトの名無しさん垢版2018/08/31(金) 23:00:22.02ID:9BvJl+C0
>>503←人並みに悔しい感情を持ちあわせた奇特なプロさんwwwwww
0505デフォルトの名無しさん垢版2018/08/31(金) 23:03:01.99ID:4ZfpOo1s
頭が悪いと
更生もできない
0506デフォルトの名無しさん垢版2018/08/31(金) 23:05:06.64ID:9BvJl+C0
>>505←突然自らの半生を語りだしたプロさんwwwwwwwwww
0507デフォルトの名無しさん垢版2018/08/31(金) 23:06:08.30ID:4ZfpOo1s
この板は気の毒なぐらい頭悪いのしかいないから
しょうがないともいえる
0508デフォルトの名無しさん垢版2018/08/31(金) 23:07:43.12ID:9BvJl+C0
>>507←気の毒なぐらい頭悪いプロさんwwwwしょうがないwwwwwwwww
0509デフォルトの名無しさん垢版2018/08/31(金) 23:08:01.01ID:4ZfpOo1s
よくこんなオツムで
リアルの世界で生きていけると思うわ

2ちゃんねる以外では到底通用しない

結論としてクソニートと断定できる
0510デフォルトの名無しさん垢版2018/08/31(金) 23:09:01.22ID:9BvJl+C0
>>509←いまだに2ちゃんねるの世界で生きとるプロさんwwwwwwww
0511デフォルトの名無しさん垢版2018/08/31(金) 23:18:09.34ID:9BvJl+C0
プロさん、力尽きるwwwwwwwww
0512デフォルトの名無しさん垢版2018/09/01(土) 10:22:56.02ID:NLKip2ko
すいませんここってVBA質問スレですよね?
この質問に答えられる人は居ないのですか?

昔はMSSoapとかいう便利なSoapクライアントが標準で入ってたと思うんだがwin7にはないのか?
いまどきのVBAだとどうやって標準だけでsoap serverに接続すんの?
0514デフォルトの名無しさん垢版2018/09/01(土) 10:49:27.34ID:NLKip2ko
>>513
めんどくさすぎなんですけど?
mssoapのmssoapinitと同じくwsdlの解析を1行でできなきゃ使い物にならないですよ
0515デフォルトの名無しさん垢版2018/09/01(土) 11:17:37.49ID:hMjkFdL/
めんどくさいとか言ってないで自分でラッパー作ればいいだろ
一回苦しめば後は楽だよ
0517デフォルトの名無しさん垢版2018/09/01(土) 11:52:06.05ID:HRxiLrgz
>>515
汎用ラッパーを作るのは最悪級の車輪の再発明なので却下
サービスごとにラッパーを書くのは工数かかるから却下
既存の資産でなんとかしたい
0520デフォルトの名無しさん垢版2018/09/01(土) 15:24:30.67ID:bkZOOzfl
既存の資産って言ってるけど当のMSが積極的なサポートをやめてるんだし、envelopeを投げるリクエストメソッドとかは基本的にユーザー側で作ってねってことだろ

その能力がないとか、その労力を惜しまなければならない状況なら、所詮は今まで使ってたコードは環境依存の資産でしかなかったってことだろ
0521デフォルトの名無しさん垢版2018/09/01(土) 15:34:52.35ID:0QGY34UC
cpanとかNuGetみたいなパッケージ管理システム/リポジトリが無いのは本当に欠陥だよな
たぶんMSXMLのラッパーなんか作ってる人いっぱいいるんだろうけど、それを公開する場所も共有する方法もない
そのせいで車輪の再発明が当たり前な文化だし、しまいには俺も苦労したからお前も苦労しろの老害思想

ほんと吐き気がする

というわけで>>512への回答としては苦労してラッパー作りましょう
0524デフォルトの名無しさん垢版2018/09/01(土) 17:40:51.73ID:mjuKggTp
>>512
>昔はMSSoapとかいう便利なSoapクライアントが標準で入ってた
なら標準で入ってた環境で使えば?
新規になんか作るより運用でカバーできるならそっちの方がずっと楽だよ
0525デフォルトの名無しさん垢版2018/09/01(土) 19:49:17.70ID:8XWt4TWp
VBAにパッケージマネージャなんかあったらマルウェアの温床だろう
すぐにVBAGet(仮称)自体がウィルスとしてセキュリティソフトの駆除対象になって終わりだよ
0526デフォルトの名無しさん垢版2018/09/01(土) 21:25:09.36ID:tt1XTLVx
>>525
その辺はリポジトリーを管理する組織、いわばリポジトラーが安全性を担保するから問題ないかとー
0527デフォルトの名無しさん垢版2018/09/01(土) 21:29:10.70ID:1LBe8Cyr
>>526
NuGetなどの公開リポジトリは一般に、作者の認証は行うけどそれだけだぞ
作者自身が意図して(or作者のPCのウィルス感染などで)悪意あるコードを仕込むのを防ぐことはできない
0528デフォルトの名無しさん垢版2018/09/01(土) 21:35:27.69ID:tt1XTLVx
>>527
NuGetはマルウェアの温床になってるの?
0531デフォルトの名無しさん垢版2018/09/01(土) 21:53:09.10ID:NLKip2ko
公開・非公開は関係ない
人間は失敗するし産業スパイは金になるところにはどこにでもいる
だからソースが見えてるものが安心なんだ
ソースが見えてれば世界中の人たちが検証できるからね
0532デフォルトの名無しさん垢版2018/09/01(土) 21:55:35.79ID:MpWrJr2V
(自分が検証できるとは言ってない)
0533デフォルトの名無しさん垢版2018/09/01(土) 22:01:27.25ID:tt1XTLVx
>>530
知らない
VBA以外の環境でもパッケージマネージャがマルウェアの温床になるなら
言語の問題ではなくてパッケージマネージャの問題と言える
VBAだからといってパッケージマネージャの導入が悪くなるわけではない

大騒ぎになったということはマルウェアが仕込まれたら困るユーザが
たくさんいたってこと、そのユーザの力を借りれば良い

パッケージマネージャでユーザレビューを提供して
このパッケージは怪しい動きしてるってことが発覚したら
ユーザによってパッケージの評価を下げられるようにすれば
ある程度被害を抑えられる、あまりに酷いようならその開発者を
ブラックリストに入れることで対処できるってことやな
0534デフォルトの名無しさん垢版2018/09/01(土) 22:02:50.27ID:tt1XTLVx
僕はVBAにパッケージマネージャが欲しい
0535デフォルトの名無しさん垢版2018/09/01(土) 22:04:09.42ID:MpWrJr2V
これはなんとゆう能天気なプロさんwwwww
0536デフォルトの名無しさん垢版2018/09/01(土) 22:04:52.81ID:tt1XTLVx
>>535
おいおまえ、パッケージマネージャを作ってくれ
0537デフォルトの名無しさん垢版2018/09/01(土) 22:07:05.47ID:bEXb+lmV
>>533
.NETとVBAしゃ開発者のスキルが違うし、事故があったときの被害規模が段違いでしょ
VBAだとセキュリティ制御も困難だし
0538デフォルトの名無しさん垢版2018/09/01(土) 22:07:58.94ID:MpWrJr2V
プロさん、vbaにパッケージとゆう概念がない事を知らないwwwww
0539デフォルトの名無しさん垢版2018/09/01(土) 22:14:16.49ID:tt1XTLVx
>>537
スキルなんて大して変わらんだろ、被害規模も変わらんだろ
できることに大差はない、セキュリティは問題無い、やろう

君がパッケージマネージャ開発しよう、そしてMicrosoftに買収してもらおう
その価値を考えるなら1億円くらいが妥当、半分は開発を指揮して主導した
僕の手柄だから僕がもらう、発案者として僕にはその権利がある
0540デフォルトの名無しさん垢版2018/09/01(土) 22:18:09.56ID:tt1XTLVx
>>538
お前が作るんです
0541デフォルトの名無しさん垢版2018/09/01(土) 22:19:58.25ID:MpWrJr2V
なんや訳わからんと横車を押してみるプロさんwwww
0542デフォルトの名無しさん垢版2018/09/01(土) 22:20:44.42ID:tt1XTLVx
>>541
頑張れ! とにかく頑張れよ!
0543デフォルトの名無しさん垢版2018/09/01(土) 22:21:07.75ID:tt1XTLVx
何わろとんねん、真剣にやれ
0544デフォルトの名無しさん垢版2018/09/01(土) 22:22:09.95ID:MpWrJr2V
詰みに気がついた様子のプロさんwなおここからもう一度横車を押しますwwwwwww
0545デフォルトの名無しさん垢版2018/09/01(土) 22:23:01.17ID:tt1XTLVx
よいさ!よいさ!
0546デフォルトの名無しさん垢版2018/09/01(土) 22:23:27.22ID:tt1XTLVx
面白い返しが来ます
0548デフォルトの名無しさん垢版2018/09/01(土) 22:26:04.56ID:tt1XTLVx
>>547
静かにして面白い返しが来るから
0549デフォルトの名無しさん垢版2018/09/01(土) 22:30:35.59ID:tt1XTLVx
来ませんでした
0550デフォルトの名無しさん垢版2018/09/01(土) 22:33:34.14ID:tt1XTLVx
何絶句しとんねん、黙ったらダメ
なんでもええやんけ、どんぶらこっこ、どんぶらこっこwwwww
でええんや、自分の取り柄は末尾にwをつけることやろ
それさえ守ってればなんでもええんや
0552デフォルトの名無しさん垢版2018/09/01(土) 22:35:40.15ID:tt1XTLVx
>>551
wwwww
0553デフォルトの名無しさん垢版2018/09/01(土) 22:43:44.54ID:s7o8mRGP
必要な人にだけdll配って参照設定するんじゃね?
それでdllない端末は実行できずにエラーになる
その程度だし、その気軽さがVBAの存在意義だろ?
0555デフォルトの名無しさん垢版2018/09/01(土) 23:00:05.19ID:MpWrJr2V
発狂するプロさんwwww
0556デフォルトの名無しさん垢版2018/09/01(土) 23:01:59.69ID:tt1XTLVx
>>555
遅い、話にならない
0557デフォルトの名無しさん垢版2018/09/01(土) 23:02:43.23ID:tt1XTLVx
この人のセンスを見習って欲しいね、これは脱帽せざるを得ない

547+1 :デフォルトの名無しさん [↓] :2018/09/01(土) 22:25:23.33 ID:zuN21Q9R (1/2)
キチガイの巣になってて草

551+1 :デフォルトの名無しさん [↓] :2018/09/01(土) 22:34:22.57 ID:zuN21Q9R (2/2)
自分がキチガイじゃないと思ってるキチガイいて草
0558デフォルトの名無しさん垢版2018/09/01(土) 23:58:35.30ID:MpWrJr2V
プロさん、バカがばれて今夜も敗走wwwwwww
0559デフォルトの名無しさん垢版2018/09/02(日) 00:15:10.00ID:lBIHv2hD
アマチュアの人達はchocolateyも知らんのかね
あれは特定の言語に偏ったものじゃないからVBAのパッケージ管理にも使えるぞ

だから問題は管理システムがないことじゃないんだ
VBAには価値あるパッケージを作れる、作りたがるプロフェッショナルが少ないから管理システムがあっても意味がないんだ
0560デフォルトの名無しさん垢版2018/09/02(日) 00:37:48.59ID:uO0ayeCX
>>559
これを登録してもくれるか? 有用なパッケージだ
SUB SORT(A)
 DIM I, J, T
 FOR I = 1 TO UBOUND(A)
  FOR J = 1 TO UBOUND(A)
   IF A(J - 1) > A(J) THEN
    T = A(I)
    A(I) = A(J)
    A(J) = T
   END IF
  NEXT
 NEXT
END SUB
0562デフォルトの名無しさん垢版2018/09/02(日) 07:03:14.95ID:GR8jnF/5
>>559
> アマチュアの人達はchocolateyも知らんのかね
VBAスレに出没する自称プロ乙 w

> あれは特定の言語に偏ったものじゃないからVBAのパッケージ管理にも使えるぞ
むしろVBAに偏ったパッケージマネージャーが欲しいって話なんだが…
0563デフォルトの名無しさん垢版2018/09/02(日) 08:47:52.85ID:lBIHv2hD
>>562
そもそも需要がないでしょう
なんども議論されてる内容ですが、インストールが許可されてるなら他の言語やツールを使うし、許可されてないならどんなに素晴らしいパッケージリポジトリがあっても無意味です
仮に需要があったとしても、供給側にやる気がないのはgithubなどホスティングサービスでVBAプロジェクトの数を調べれば明らかです
需要も供給も知らなくていい、自分の好きな事だけやればいい、の精神だからアマチュアと言われるのでは?

まあそういう事なので、VBA専用と堂々と銘打ってユーザーを取り逃がして潰れるよりかは、すでに安定してるリポジトリに間借りしたほうがいいわけです
0564デフォルトの名無しさん垢版2018/09/02(日) 09:04:54.76ID:Jj8StVep
普通の会社の事務員とかVBAくらいしかできないから潜在的な需要はありそうだけど社内規定が足枷になってるということか
0565デフォルトの名無しさん垢版2018/09/02(日) 09:13:30.48ID:lBIHv2hD
社内規定の問題も大いにあるけど
パッケージ提供者となりうる高スキルのプロ達がVBA好きじゃないという点が最大の問題
0568デフォルトの名無しさん垢版2018/09/02(日) 09:33:10.27ID:lBIHv2hD
>>566
アカウント取ってサービスのルールに則って必要事項を入力してサイレントインストーラーをアップロードして審査申請して審査結果を待つだけだぞ?
アマチュアには難しいか?
0569デフォルトの名無しさん垢版2018/09/02(日) 09:42:43.97ID:yzg4vrC6
高スキルのプロ(笑)
0570デフォルトの名無しさん垢版2018/09/02(日) 10:03:09.93ID:uO0ayeCX
>>568
>>560これよろしくね
0571デフォルトの名無しさん垢版2018/09/02(日) 10:26:34.00ID:GR8jnF/5
>>568
VBAのコードを更新した時の操作書いてみ
まさかVBE起動してモジュール削除とインストールとかを手動で操作させるとか言わないよな?
0574デフォルトの名無しさん垢版2018/09/02(日) 19:39:40.79ID:LiFZn+ru
例えばC++で社内システム作ったとして、それをGithubなんかに公開する所があるかく言えば、それは無いだろう。
基本的に公開するのは汎用的な何かだ。

ところがVBAはその性格上、非常に業務に密接に繋がっていて汎用的なものは少ない。
したがって公開する奴が少ないのも当然のこと。

汎用的なものを作って公開してる奴もいるけど、アクロバティックでVBAでやるべきことかという内容か、わざわざ公開されなくても既に自分も似たようなの作ってあるわというものになりがちだ。
0575デフォルトの名無しさん垢版2018/09/02(日) 19:43:21.24ID:9428gf6j
外注に出してプロに作ってもらったシステムより、
実際に事務やってるVBA詳しい先輩が作ったシステムの方が使いやすい
0577デフォルトの名無しさん垢版2018/09/02(日) 19:54:12.41ID:z8wq1pBp
>>574
汎用的なものは普通標準ライブラリと呼ばれる類のものだけど、VBAにはそれがない。
ないものを提供しようとすると多少アクロバティックになる。

ってところか?
0578デフォルトの名無しさん垢版2018/09/02(日) 23:10:22.24ID:LiFZn+ru
>>577
ExcelVBAでの処理はセルの操作などが主な部分だからそんなものはわざわざ公開してほしいものじゃ無い。
一方、そんなに簡単では無い処理についてはVBAでやることかという内容だったりもする。
例えばWin32APIで色んなことが出来るわけだけど、それはアクロバティックということになっている。
0579デフォルトの名無しさん垢版2018/09/02(日) 23:33:55.02ID:1UAuj6u9
csvの散らかってるものを整理して並べ直すマクロ誰か作ってくれ
とっちらかっててイライラする
0582デフォルトの名無しさん垢版2018/09/03(月) 00:08:34.33ID:MKjqrpIU
>>579
「散らかってるもの」じゃさっぱりわからんだろ
Function csvを整理して並べ直す(ファイル名 As String, n番目の要素 As Long, orderby As Boolean) As Variant
みたいな感じか?
0583デフォルトの名無しさん垢版2018/09/03(月) 00:30:50.65ID:OKjkkQdd
>>579
俺のところにあるとっちらかってるtxtファイルをソートするマクロを作ってくれれば
おまえのマクロつくってやるよ

っていわれてできるか?w

>>572
ワッチョイってそんな簡単にいれらるのか?
いれられるなら入れた方がいいだろうけど
スレ住民的にはない方がいいってやつの方が多そうだなw
0584デフォルトの名無しさん垢版2018/09/03(月) 00:35:56.95ID:Y8VZgtfv
>>582
ただのぼやきなんだよ
お願いしたわけではなくって
lookupで頑張った結果大変なことになったからVBAで頑張ろうとしている次第
csv開くだけでも一苦労だよ
0586デフォルトの名無しさん垢版2018/09/03(月) 07:15:27.07ID:MKjqrpIU
>>584
その程度のことはやったらやっただけのリターンは得られるからやればいいよ
0590デフォルトの名無しさん垢版2018/09/03(月) 09:52:24.30ID:X772ffFm
PowerShell, JScript, Python, Ruby…
単にファイル結合するだけならbatとかでもいい
wslでbashシェルコマンド使うのもアリだ
0591デフォルトの名無しさん垢版2018/09/03(月) 09:58:17.85ID:hxBJAcC6
Powershellに標準で用意されているcsv用コマンドレットの豊富さや
whereオブジェクトで簡単に値を検索-参照-変更できるメリットは代えがたい。
キー列を使っての結合も自在、いちいちテーブルに読み込む必要もない。
0605デフォルトの名無しさん垢版2018/09/03(月) 12:20:35.49ID:GqvJK5S9
うちじゃPowershellが使えないのが残念なところだ。
まだVIsualStudio(Express)のインストール申請の方が通りやすい
0606デフォルトの名無しさん垢版2018/09/03(月) 12:33:12.21ID:jwXBtNqK
パワーシェル好き
いちいちFileSystemObjectのインスタンスを作って再帰処理とかしなくてもフォルダ関連の処理は組み込みのコマンドレットで大抵何でも出来るし、概してVBAで処理するより高速で軽い
参照カウンタ方式でメモリ管理をしてるVBAで巨大フォルダの処理をやるとうっかりスタックオーバーフローさせちゃうリスクが高いし
0607デフォルトの名無しさん垢版2018/09/03(月) 13:01:35.09ID:oOf4f4g2
PowerShell大嫌い
C#のつもりで書くとドツボにはまる
.NETのコレクション使うような込み入った処理に使うには最悪
0609デフォルトの名無しさん垢版2018/09/03(月) 18:52:48.79ID:DpP+yzAQ
PowerShell自体は悪くない。
けど、使ってる奴が根本的に能力が低い。
それとも、ここに来てるPowerShellユ―ザーがかな。

処理を作れるかどうかというレベルじゃ無くて要件に合ってるかどうかというレベルで能力が低い。
0611デフォルトの名無しさん垢版2018/09/03(月) 18:55:18.64ID:lS5Tq6xt
パワーシェル自体絶望的にセンスが悪いからバカがあんだけ食いつくんやでw
0614デフォルトの名無しさん垢版2018/09/03(月) 19:15:48.40ID:ttVcJTrG
常に、シェルスクリプト・バッチ・VBA のスレでは、

PowerShell, Ruby を使えっていう結論になるw
0617デフォルトの名無しさん垢版2018/09/03(月) 19:39:35.25ID:lS5Tq6xt
>>616
そもそも何からマウント奪いたいんやおまえは?w
0621デフォルトの名無しさん垢版2018/09/03(月) 20:00:29.82ID:lS5Tq6xt
>>619
パワーシェルやルビーはどこにも行けんやろw行くならおまえやw
天然なん?w
0625デフォルトの名無しさん垢版2018/09/03(月) 20:13:30.99ID:QuRlDWYz
モスバーガーでマクドナルドハンバーガー美味しいと言ってる人居たらマクドナルドハンバーガーに行ってマクドナルドハンバーガーを美味しく召し上がれよと思うじゃんそんなにマクドナルドハンバーガーが好きならさ
0626デフォルトの名無しさん垢版2018/09/03(月) 20:23:44.18ID:cj4ncMHP
何かの事情があってモスに来てる奴が本当はマックの方がいいのに、、、とかぼやくくらいのシチュエーションなんて普通にあり得るんだよなぁw
0627デフォルトの名無しさん垢版2018/09/03(月) 20:32:46.67ID:QuRlDWYz
本当はマクドナルドハンバーガーに行きたいのか? どうしてマクドナルドハンバーガーに行かないよね?
0628デフォルトの名無しさん垢版2018/09/03(月) 20:33:39.78ID:E2St7m4+
パワー系池沼には近寄りたくない
0629デフォルトの名無しさん垢版2018/09/03(月) 20:52:04.26ID:lS5Tq6xt
大概ひきこもりやから遭遇する心配はいらんけどなw
0632デフォルトの名無しさん垢版2018/09/03(月) 21:12:34.90ID:JdnjhIe3
テキストファイル(XMLファイルやJSONファイル)を1つのブックに詰め込んで出荷したいのですがどうすればいいですか?
データ用のシート・セルを用意してText属性に書き込む方式は自分でも考えましたが「それテキストファイルじゃなくてシートじゃん?」ってなるのでNGです
C#やVB.NETでいうところの埋め込みリソースが理想形です
0634デフォルトの名無しさん垢版2018/09/03(月) 21:22:30.37ID:lS5Tq6xt
>>630
なんでいきなりガイジ扱いやねんw失礼やわーコイツwwww
0642デフォルトの名無しさん垢版2018/09/04(火) 09:25:36.35ID:5XsTaBv6
>>616
ビックリ。
>>579のような要件じゃアドバイスなんてできんだろと思ってたら勝手にPowerShellでアドバイスしといて、条件でてきたらその言い草かよ。

PowerShellが良いと言いたいだけで、要件なんて何も考えてなかっただけだろ。
0646デフォルトの名無しさん垢版2018/09/04(火) 12:41:59.08ID:iBafINOM
VBAでは変なハックしないとリソースファイルを簡単には纏められないんですか
残念です
0647デフォルトの名無しさん垢版2018/09/04(火) 17:28:35.50ID:Yrriiexs
pdfから特定のデータだけ欲しいんだけど基本機能じゃ出来ない?
acrobat?買え言われた
とりあえず全選択貼り付けで正規表現で必要な値取るようにしたけどもっと手軽な方法あったら教えて
0649デフォルトの名無しさん垢版2018/09/04(火) 19:01:02.67ID:Ur36aaCZ
PDFのファイルフォーマットみて自分でなんとかできるならVBAの基本機能でできるかもしれんが

手軽な方法はそれ用のライブラリ探すことからだな
0650デフォルトの名無しさん垢版2018/09/04(火) 19:06:17.28ID:VcFnwWP5
あまりに冗長なCOBOLコード(負の遺産)に嫌気がさし、ソース解析マクロの作成を決意。

作りたいものがあるとモチベ上がるよね
0651デフォルトの名無しさん垢版2018/09/04(火) 19:11:22.13ID:RaX7EawA
コボルで書けや
0654デフォルトの名無しさん垢版2018/09/04(火) 19:44:23.68ID:2YDEkct0
ソース解析ツールなんてそれこそ金出してでもコーディングの手間を惜しむべきコモディティじゃん
VBAでやる必要あるのか?
0655デフォルトの名無しさん垢版2018/09/04(火) 20:01:06.73ID:d1yNDTEj
ホストにある資源を自分のローカルに持ってくにはテキストファイル化せなあかんのや。
メソッド同士をハイパーリンクで紐づけたり、使ってるサブルーチンを表にしたり。なんやかんやでVBA様便利やでー
0657デフォルトの名無しさん垢版2018/09/04(火) 20:04:52.77ID:d1yNDTEj
幸い、COBOLはクラスとかアクセス修飾子って概念がないので他言語に比べたら解析ツールは楽に作れそう…って見立てや
0660デフォルトの名無しさん垢版2018/09/04(火) 20:12:57.29ID:qTWx44W8
VBAでCOBOLの構文解析とかそんな苦行に苦行を重ねなくてもまともなツールぐらい腐る程あるだろ…
と思って検索したらIBMのプログラムの次にVBAのツールが出てきて変な声出た
0663デフォルトの名無しさん垢版2018/09/04(火) 20:16:25.24ID:d1yNDTEj
>>659
認識の違いかな。すまん
俺はソースコードもホストの資源だと思ってるよ
データもソースも結局はデータセットに入っているわけだし
0665デフォルトの名無しさん垢版2018/09/04(火) 20:18:56.94ID:Ia+IVj5j
つーかCOBOLに限らず古い言語って解析機の設定難しいよ
古いものは文法が洗練されてないので当然っちゃ当然だけど
0666デフォルトの名無しさん垢版2018/09/04(火) 20:23:31.43ID:RaX7EawA
なんや急にこの賑いwプロさんてみんなコボラーくずれなんかw
0667デフォルトの名無しさん垢版2018/09/04(火) 20:23:44.65ID:d1yNDTEj
>>660
そもそも、レガシーなモノを解析するツールを、わざわざ新しい言語で開発するなんてあまりないんだろうな…
0668デフォルトの名無しさん垢版2018/09/04(火) 20:26:20.57ID:d1yNDTEj
>>665
そうね。大昔のソースは見ていて頭痛がするわ
谷のように深いネストやGO TOの嵐…
だからこそ何かツールを作ってみたくなった
0669デフォルトの名無しさん垢版2018/09/04(火) 21:00:05.70ID:qO3EZwXy
>>663
COBOLソース解析してどう再利用するのさ?
そこがわからん
0670デフォルトの名無しさん垢版2018/09/04(火) 21:02:18.90ID:qO3EZwXy
流れ関係ないけどVBAってやっぱりネット上に良質の情報が少ないんだよ。
今のqiitaとかなんだありゃ。いったい誰に語りかけてるんだかわからん記事が多すぎだ。
0671デフォルトの名無しさん垢版2018/09/04(火) 21:17:41.07ID:Ia+IVj5j
良質な情報は良質なプログラマから発信される
アマチュア主体のVBAじゃ限度がある
0672デフォルトの名無しさん垢版2018/09/04(火) 21:24:54.44ID:ltlt+wga
でもプロが作ったシステムより社内で作ったものの方が完成度高いんだよね
0673デフォルトの名無しさん垢版2018/09/04(火) 21:29:32.62ID:d1yNDTEj
わざわざVBAのノウハウをqiitaに投稿してくれる熟練者がいないのかもな。
VBAはあくまで仕事のためのちょっとしたツール作成のための手段というイメージ。
いわゆるガチな人の大半は、もっと違う言語に目を向けているのだろうな
0674デフォルトの名無しさん垢版2018/09/04(火) 21:31:59.83ID:Sk84LOCD
かなり以前にシステム移行で既存のCOBOLソースのチェック用にVBAでソース解析のツールを利用したことはある。
解析とは言ってもホストのコンパイル済みソースをPCに落としてその後どうしたか…もう昔のことで覚えていないw
0675デフォルトの名無しさん垢版2018/09/04(火) 22:45:37.57ID:TA0zYEOn
棒グラフの作り方で質問です。
バーの色を、データ元のcellや文字色に対応させて一括変更することは出来ますか?
0677デフォルトの名無しさん垢版2018/09/04(火) 23:41:04.59ID:RaX7EawA
>>675
できません
>>676は貴方を騙そうとしています
彼には十分気をつけてください
0680デフォルトの名無しさん垢版2018/09/05(水) 00:06:51.88ID:hapuVvhb
行の値を順番に見て見入って
別のシートのB列に存在していればA列に●ってのを入れたいのですが

For i = 1 To Range("B2").End(xlDown).Row
If WorksheetFunction.CountIf(Worksheets(Sheet1).Range("B1:B1000"), Range("B" & i).Value) = 0 Then
Range("A" & i) = "●"
End If
Next

5000行でもかなり時間がかかります。もっと時間がかからないやり方があれば教えて下さい
0681デフォルトの名無しさん垢版2018/09/05(水) 00:08:23.39ID:hA39yyTc
>>679のプログラム
Sub Macro1()
  ActiveSheet.ChartObjects("グラフ 1").Activate
  With ActiveChart
  For k = 1 To 2
    With .FullSeriesCollection(k)
    For p = 1 To 10
      .Points(p).Format.Fill.ForeColor.RGB = Cells(p + 1, k).Interior.Color
    Next
    End With
  Next
  End With
End Sub
0682デフォルトの名無しさん垢版2018/09/05(水) 01:00:37.13ID:D+OUZtCk
>>680
作業列作るなりしてワークシート関数でやった方が早いよこんなことは
あと、この条件だとSheet1に値が存在しない場合にA列に●がつくことになると思うよ
0684デフォルトの名無しさん垢版2018/09/05(水) 01:45:14.10ID:Utg8HVgU
>>673
VBAのスキルをアピールすると逆にバカだと思われるから
煽りじゃなく転職とかで事実そういう目で見られる
0685デフォルトの名無しさん垢版2018/09/05(水) 02:58:54.45ID:K0pGicrM
>>632
まず第1にマクロの記録はやってみたのか?
やりもしないで質問するじゃ回答がつかないのも仕方無かろう。

次に、内容をよく見ればXMLやJSON関係ないだろ。
テキストファイルさえ関係ない。
質問する時にいらない情報は削った方が良い。


>>636
>>646
君が元の質問者かどうか分からんが、マクロの記録さえやらない、もしくはそういう機能さえ知らないレベルの者が回答がつかないからといってVBAでは難しいなどと思い込むのはどうなんだ?

元の質問者じゃ無かった場合だとしてもディスる為に試してみることさえしないようなレベルの奴は、そもそもプログラム組むような仕事はして欲しく無いな。
周りにとって迷惑だ。
0687デフォルトの名無しさん垢版2018/09/05(水) 03:05:14.58ID:K0pGicrM
>>647
基本機能というのがどういうものか分からんが、PDFの仕様が分かればファイルの読み書きで出来る筈だ。
昔、そういうのを書いたことがある。
ただし、PDFの場合、バージョンと扱いたいデータによっては出来ないこともあるだろう。
0690デフォルトの名無しさん垢版2018/09/05(水) 06:11:08.39ID:d26VWmGv
>>685
文字列型データをセルやテキストボックスのような組み込みオブジェクトのどれかにコピーするという単純な話だと誤解してないか?
埋め込みリソースの意味が分かってないなら君が黙ってた方がいいと思う

basファイルというか標準モジュールに行頭カンマ付 or 二重引用符付でデータを書き込んでおいて、そのデータをマクロ実行時にコピーして任意の形式のファイルを生成するとかはどうかな
この方法なら一応、エクセルのオブジェクトへのテキスト保存という方法よりは埋め込みリソースに近いイメージになるかも
VBEの操作を含むマクロになるので配布のハードルが著しく高くなるし、画像とかなら埋め込んでおくデータをバイナリデータにするとかの工夫が必要だけど
0691デフォルトの名無しさん垢版2018/09/05(水) 08:05:37.32ID:K0pGicrM
>>689
>>690
???
あのさあ、試してから言ってくれないかな。

1.[開発]リボン→[マクロの記録]を選択
2.[挿入]リボン→[オブジェクト]を選択
3.[オブジェクトの挿入]で[ファイルから]タブを選択して、ファイル名に適当なdllを指定する。
4.[開発]リボン→[マクロ記録の停止]

これで基本的にどんなファイルでもシート上に埋め込めるソースコードが出来てると思うんだが。

俺の誤解だったらすまないが、俺への指摘が噛み合ってるように見えないもんで。
0692デフォルトの名無しさん垢版2018/09/05(水) 08:14:23.51ID:K0pGicrM
埋めこみオブジェクト自体は誰でも知ってる基礎的な話だと思うんだよ。
なにしろ20年以上前に初めてExcel触った時からあった機能だと思うんだよな。
シートに画像を貼り付けたつもりなのにアイコンになってしまったなんて質問をそれぐらい前に見たような気がするんで。

であれば何らかの理由が無い限りマクロの記録でそのためのソースコードが出来るだろうと考えるのも当然のこと。

何でこんな質問が?とも思ったけど、何らかの理由があってマクロの記録では記録されないような機能だったかなと試してみたら記録された。
0693デフォルトの名無しさん垢版2018/09/05(水) 08:29:10.16ID:K0pGicrM
>>688
俺が書いたのはこんな便利な機能使ったものじゃないと思う。
PDFのファイル構造はググれば出てくるが、バイナリをゴリゴリする方法だったと思う。
OLE使った記憶が無いもんなあ。
すまんが、大分昔で自分がどんな方法で書いたかはほとんど覚えていないのでかなり曖昧。

ゴリゴリ書く方法はお勧めしない。
>>688のリンク先の技術を使った方が良いね。
0694デフォルトの名無しさん垢版2018/09/05(水) 08:40:26.86ID:BLSFUWnl
>>691
ありがとう
やり方がわからないから聞いてるわけで
わからないんだから試せるわけないよね
次からはもっとさっさと説明してね
0695デフォルトの名無しさん垢版2018/09/05(水) 08:45:18.19ID:BLSFUWnl
オブジェクトの挿入じゃダメだった?
と聞くのがいんじゃないかな
マクロの記録は試したかじゃ意味がわからないよ
0696デフォルトの名無しさん垢版2018/09/05(水) 08:54:18.91ID:BLSFUWnl
教えてくれてありがとうという感謝の気持ち
態度が気に入らないという憤慨の気持ち
0697デフォルトの名無しさん垢版2018/09/05(水) 09:00:50.18ID:K0pGicrM
ファイルを埋め込むという機能が存在する、そしてその方法も知っているけれどもそのVBAのコードを知りたいという質問と受け取ったので。
0702デフォルトの名無しさん垢版2018/09/05(水) 11:04:22.64ID:X0GkLMTX
>>693
記憶が曖昧とか誤魔化さなくていいよ
ググったらそれらしいものが出てきたからドヤりたいけど、やったことないからやったことあるって断言したくないなーってところかな
0704デフォルトの名無しさん垢版2018/09/05(水) 12:01:11.93ID:tFzj0agy
横からだが>>632のやりたいことを誤解してたようだ。
シート以外の場所にテキスト情報を埋め込んで、なおかつプログラムから直接その内容にアクセスしたいんだと思ってた。
埋め込みオブジェクトじゃそんなこと出来そうもないしな。
単に同梱したかっただけなのか。
0705デフォルトの名無しさん垢版2018/09/05(水) 12:14:10.69ID:7w3bpeCa
>>704
質問者ですがあなたの理解のほうが正しいです
埋め込みオブジェクトの話ではありません
余計なシートやオブジェクトを増やしたくはありません
0706デフォルトの名無しさん垢版2018/09/05(水) 12:17:37.36ID:tFzj0agy
>>705
ふーんそうなんだ
念のためだけどテキスト情報は隠蔽する必要があるの?
それと量はどれくらい?
0707デフォルトの名無しさん垢版2018/09/05(水) 12:27:37.99ID:K0pGicrM
>>702
???
俺は>>688じゃないし、ググってもいない。
当時PDF Hack読んでたからそれに載ってる情報かもしれないが、手元にPC無いから確認できん。

PDFの仕様はググれば出てくるぞ。
後はバイナリで読み込めば良い。
当時作ったのも、サンプル程度の断片だ。
家で探せば有るとは思う。
0710デフォルトの名無しさん垢版2018/09/05(水) 12:39:44.20ID:K0pGicrM
>>705
自分が少しおかしなこと言ってる自覚ある?
テキストファイルに画像を埋めこみたいと言ってるようなもんだぞ。
それでテキストにエンコードして追加してもテキストファイルじゃないと言い張ってるようなもんだ。

俺もブックはZip圧縮したものだから、単純に中に含めることも考えたけど、それって正式にExcelのブックと呼んで良いのかね?
JPEG画像なんかにファイル埋め込むのと一緒。
0711デフォルトの名無しさん垢版2018/09/05(水) 12:52:34.07ID:BLSFUWnl
お客様の中にオプンエクスエムエルの仕様に詳しい人は居ませんか? カスタムファイルを含むことはできるんでしょか?
0712デフォルトの名無しさん垢版2018/09/05(水) 12:59:52.03ID:7w3bpeCa
>>710
おかしいでしょうか?
テキストや画像とマクロブックでは利用目的もなにもかもが全く違います
テキストに画像を埋め込みたいという需要はあまりないかも知れませんが(まあSVGとかありますけどね)
マクロブックは1ファイルであることに非常に大きなメリットと需要があります
もしも他の言語で出来るようなスマートな方法でファイルリソースを埋め込むことができないならば
それはマクロブックのアイデンティティを揺るがしかねない由々しき問題です
0713デフォルトの名無しさん垢版2018/09/05(水) 13:04:23.79ID:X0GkLMTX
>>707
自作PDFを齧った人なら「仕様はadobeから出てるよ」「後はデコードしてテキスト処理すればいい」と言うんじゃないかな?
0714647垢版2018/09/05(水) 13:20:43.83ID:Xc88RL8s
レス付けてくれてる人ありがとう
ただ初心者で事務員レベルの知識しかない為デコード云々言われても全然ピンときてないわ
とりあえずurl参考にもう少し学んで、まだ分からない点あったら後日改めて具体的に聞く
0717デフォルトの名無しさん垢版2018/09/05(水) 16:15:19.01ID:tFzj0agy
シートこそテキストの埋め込みに最適な気がしてきた
セルに名前付ければそれが擬似的なファイル名じゃないか
0718647垢版2018/09/05(水) 18:25:15.51ID:Xc88RL8s
>>688の参考サイト見たけどやっぱりacrobat proが無いと動かんみたい
理想は標準機能(オートメーション?)での操作なんだけどproが無いと無理そうだよね?
あとpdfデコードしてーてのは普通にpdf開いてテキスト部分がバイナリ化?されてるからそこを戻したらテキストいじれるて理解であってる?
0720デフォルトの名無しさん垢版2018/09/05(水) 18:43:15.08ID:K0pGicrM
>>712
そういうことを言ってるんじゃない。
>>711を見て、そういえばそうかと思ったわけだけどOpenXMLの仕様にあればおかしく無いんじゃね?
仕様に無ければ例えExcelで開くことが出来ても不正なファイルだろという意味で言った。

よく考えればVSTOもあるし、Excel上で手動で出来ないことでもブックの仕様として、あり得るわな。
実際に仕様としてあるかどうかは知らん。
0721デフォルトの名無しさん垢版2018/09/05(水) 18:48:05.53ID:HpE7IfIU
ここは一つ、ぜひRubyキチガイにワンライナーでこうするんだ!ってのを書いてほしいっす
0722デフォルトの名無しさん垢版2018/09/05(水) 18:53:42.70ID:K0pGicrM
>>713
当時、Adobeから仕様を取得したかどうかも覚えていない。
もしかしたらPDF Hackのサンプルを弄った程度かもしれんし。

当時は、Anotationをどうにかしたかったんだが、それは出来なかった。
Pro版で作ったPDFはReaderからAnotationを追加出来たんだよな。
レビューコメント追加するのに便利だと思ってた。
でも配布元がPro版じゃ無かったから
うまい追加方法が無いかと。

Anotationをどうにかしようとしてたとすると、俺も何らかのライブラリ使ってたかもしれない。
0723デフォルトの名無しさん垢版2018/09/05(水) 19:06:18.69ID:gtpSZGl0
テキストファイルに画像(というかバイナリ)埋め込みは昔からuuencdeとかあるんだから
そういうのを応用すればExcel VBAでもコード内に埋め込みはできるよね?

data = array( "埋め込みコード1", _
"埋め込みコード2", _
"埋め込みコード3" )

decode2file(data, file)
0724デフォルトの名無しさん垢版2018/09/05(水) 19:10:14.81ID:UEpkpswy
コード内に埋め込みなんて
メンテしにくくて効率悪い
今は普通にファイルで管理するでしょ?
0726デフォルトの名無しさん垢版2018/09/05(水) 19:25:17.48ID:6Z3q2IUX
>>719
なんや急に?なんか悔しかったんか?
0727デフォルトの名無しさん垢版2018/09/05(水) 19:44:21.15ID:Gm1e1X5r
>>721
断じていつものruby基地外ではないがテキストだけならこれで
Poppler::Document.new(“hoge.pdf”).map(&:text).join.scan(/必要な値の正規表現/)
0728デフォルトの名無しさん垢版2018/09/05(水) 19:46:31.98ID:Xm1UlI+a
プログラムを簡単に作ってやりたいが
簡単にしすぎるとVBAにたどりついてお金がかせげない
0731デフォルトの名無しさん垢版2018/09/05(水) 21:51:43.21ID:Thm6ImT5
>>723
1ファイルが良い理由の1つにユーザーが扱いやすい、つまりユーザーがメンテしやすいってのがある
なのでそういうメンテナンス性を著しく低下させる方法は意味がない
0734デフォルトの名無しさん垢版2018/09/05(水) 22:23:11.74ID:6Z3q2IUX
謎の1フォイルへのこだわりてそんなにメジャーなんか?
0735デフォルトの名無しさん垢版2018/09/05(水) 22:33:13.01ID:M4l8cD2I
埋め込みオブジェクトってVBA的にどうにか役に立たせられないものか
dllを埋め込んでスタティックライブラリ化できれば嬉しいんだががが
0736デフォルトの名無しさん垢版2018/09/05(水) 23:14:39.04ID:gtpSZGl0
>>731
使う側が1ファイルに見えれば提供側は別に複数でもかまわんだろ
それに一度埋め込んだならメンテする手間は同じやぞ?
埋め込む前は複数ファイルなわけだしな
0737デフォルトの名無しさん垢版2018/09/05(水) 23:27:51.35ID:gtpSZGl0
シェルのヒアドキュメントも埋め込み時はひと手間掛かるし
1ファイルに収める場合はどの方法でも手間は掛かるよ
VBAだとその手間がちょっと増えるだけ
0740デフォルトの名無しさん垢版2018/09/05(水) 23:34:32.56ID:gtpSZGl0
メンテ要員「このデータどうやって作成したん?」
俺「このバッチ叩くとファイルがデータに変換されるからそれ埋め込んでね」
メンテ要員「あーわかった」
0741デフォルトの名無しさん垢版2018/09/05(水) 23:41:05.25ID:Thm6ImT5
そのバッチをエクセルと一緒に配布するのか?それじゃ2ファイルじゃないか
メンテする人は、え?1ファイルでいいのになんでわざわざバッチ実行して、ファイル増やすんですか?意味わからないです、普段使ってる開発環境で編集したいですって混乱してしまうぞ
想像力を働かせろ、運用している現場をイメージしろ
0742デフォルトの名無しさん垢版2018/09/05(水) 23:54:36.64ID:gtpSZGl0
>>741
埋め込む前は複数ファイルなんだからその時点で君の主張は破綻してるんだよ
必要ならそのバッチもVBAで作ってエクセルに突っ込んどけ知能遅れ
0744デフォルトの名無しさん垢版2018/09/06(木) 02:21:31.81ID:nwR3CQ3P
変にVBAなんか組むよりバイトとかパートの人にアナログに作業させた方が早かったりもするよね
自分の時給の1/4とかだし、1時間コード打つのにかかるんなら、彼らが4時間を超える作業量でないと損になる
0745デフォルトの名無しさん垢版2018/09/06(木) 03:25:40.20ID:OdtAawkS
一回で終わる作業なら大抵はVBAなんか要らんだろ
繰り返す定型作業だからVBAで自動化する
0746デフォルトの名無しさん垢版2018/09/06(木) 08:11:47.78ID:IZEn+era
>>744
今回の場合は手作業でできるものじゃない。
それに、そんなことして良いのかの回答もまだ得られていない。
0747デフォルトの名無しさん垢版2018/09/06(木) 08:15:14.96ID:IZEn+era
>>743
まずさ、その埋めこみリソースとやらの定義をきちんとしてほしい。
君がどういうレベルの質問をしているのか分からん。

ブックの仕様ではそういうものを扱えることになってんの?
0748デフォルトの名無しさん垢版2018/09/06(木) 08:19:49.06ID:6+T9eXI+
手作業はミスする可能性がある
1回限りの操作でも例外がなければVBAのが確実な結果が得られる
0749デフォルトの名無しさん垢版2018/09/06(木) 08:36:58.79ID:nwR3CQ3P
>>748
vbaでもチェックしなきゃいけないのは変わらないし安く上がるんならそのほうがいいと思うけどね
0752デフォルトの名無しさん垢版2018/09/06(木) 12:21:08.08ID:ZKhYOXVM
>>751
自動化したいことを決める
マクロの記録をしながら実際に手動でやってみる
生成されたコードを見ながらforやifで制御する
の繰り返しやな
0753デフォルトの名無しさん垢版2018/09/06(木) 12:32:05.59ID:bCDj82+q
一番大事なことが抜けてる。
生成されたコードの各行がどういう意味なのか考える。

例えば
Range("A1").Select
Selection.Value="hoge"
なんてコードが生成されてたら意味は
A1を選択
選択された値に"hoge"を代入
となる。

だったらA1に"hoge"を代入するコードは
Range("A1").Value="hoge"
で良いよね。
0755デフォルトの名無しさん垢版2018/09/06(木) 12:48:27.98ID:42Cgl4rK
だったら、ってサラッと流してるけどさ、

Range("A1").Select : Selection.Value = "hoge"

Range("A1") ="hoge"

Range("A1").Value = "hoge"

がほぼ同じ動きをするってこと、ガチの初心者は教わらないとわからないよ
0759デフォルトの名無しさん垢版2018/09/06(木) 13:11:18.25ID:pSvnv7DA
>>756
ありがとう!

ちなみにPCの買い替えを検討中なんだけど、
オススメのPCはあったりする?
VBAを問題なく扱えるスペックで
マックの新モデル(いつ発売か知らんけど)を買おうか迷ってたんだが、
他にあれば教えてほしい
0761デフォルトの名無しさん垢版2018/09/06(木) 14:32:32.21ID:uyGxH2tN
VBAはWindowsとExcelしか使うことを許されていない人が仕方なく使うものなので、
Macの使用が許される人は素直に別の言語を学ぼう

Mac使うなら(言語じゃないが)AutomatorやAppleScriptなんかが初学者にはいいぞ
0762デフォルトの名無しさん垢版2018/09/06(木) 14:34:30.61ID:f+Em582n
>>759
Windows10が入ってて、ドライブがSSDで、CPUがintel i5のを選んどけば間違いない
新品だとだいたい10万円だけど中古でも問題なし
0763デフォルトの名無しさん垢版2018/09/06(木) 14:41:15.36ID:ocJXcvkM
本当にExcel VBAだけが目的なら型落ちWindowsでOK
他にもやりたいことがあるならVBAだけで決めるのはハイリスク
0764デフォルトの名無しさん垢版2018/09/06(木) 14:54:51.00ID:f+Em582n
Excel(Office)が入ってるかどうか確かめるのを忘れないように
パソコンと別々に買うと高く付く

マイクロソフトのOfficeならどのバージョンでも大丈夫だけど、キングソフトのはダメ
0765デフォルトの名無しさん垢版2018/09/06(木) 15:33:41.34ID:vVlOKn8A
事務仕事をやっていてVBAが使えたら便利だなと思っていて、
VBAのスキルを(仕事に生かせるレベルまで)身に付けたら
他の言語にも手を広げたいなと考えている

プログラミングのことはチンプンカンプンだけど、
ググったらプログラミングやるならマックがええでって記事をいくつか見かけたので
マックにしようかと思ってた
エクセルも使えるし

だから、皆んなの意見を聞いてどうすればいいのか分からなくなってきた
0766デフォルトの名無しさん垢版2018/09/06(木) 16:26:31.35ID:uyGxH2tN
VBAを習得したいのかもっと一般的なプログラミングを習得したいのかハッキリさせよう

どんな事務仕事を楽にしたいんだ?まずはそこを明確にしていこう
0768デフォルトの名無しさん垢版2018/09/06(木) 17:08:12.24ID:vVlOKn8A
>>766
VBAを仕事に生かせるレベルまで習得してから他の言語も勉強したい

ほんの一例だけど各部署の旅費集計作業とか全自動化させたい
0769デフォルトの名無しさん垢版2018/09/06(木) 17:10:03.69ID:vVlOKn8A
>>766
他の言語=一般的なプログラミングなのかな
一般的なプログラミングがどういうものかわからんが
0770デフォルトの名無しさん垢版2018/09/06(木) 17:25:00.57ID:uyGxH2tN
>>769
(VBA含めて)プログラミングというものを勉強してみたいのかという意図だった

その要件で勝手にエスパーするとExcel操作しまくりだろうからVBAがいいかもね
PCは仕事で使ってるやつとOS, Officeのバージョンが同じの買えばいいよ
0773デフォルトの名無しさん垢版2018/09/06(木) 17:37:34.01ID:vVlOKn8A
>>770
操作しまくりだけど難しいことはしていない
事務作業では既にどこかの部署又はグループ会社の社員が作ったマクロを動かしてるだけだから
多少の関数は使うけどその程度

VBAだけやるなら会社のPCと同じやつでいいかもしれないけど、
VBAの先に他の言語もやりたいってのがあるからさ〜
そうなるとマックがええんちゃうのってグーグル先生が言ってまして

まあ、とにかく参考になりましたわ
ありがとうございます!
0774デフォルトの名無しさん垢版2018/09/06(木) 18:04:15.50ID:rLUupM/1
>>773
万が一他のプログラミング言語に興味を持った時は Visual Studio 2017 Community版 を入れればいい。
解説書も本屋に行けばたっぷりある。
大概の事はそれでOK
プログラマじゃないんだから、別に興味を持たなくとも良し
0775デフォルトの名無しさん垢版2018/09/06(木) 18:26:45.77ID:vVlOKn8A
>>774
なんやようわからんがそれを入れれば他の言語も開発できると
マックはそれを入れなくてもええの?
0778デフォルトの名無しさん垢版2018/09/06(木) 19:24:08.46ID:rLUupM/1
>>777
マックの事は全然知らん

みるみるプログラミングがわかる本
掌田津耶乃

↑を立ち読みすれ。確かマックの開発環境のことも書いてあったような記憶がある。
まぁ素人なんだろ?Winにしとけって
0779デフォルトの名無しさん垢版2018/09/06(木) 19:28:35.21ID:r2CzgwVn
初心者に群がるプロさんきしょいわー
0780デフォルトの名無しさん垢版2018/09/06(木) 19:31:46.27ID:UI2giREj
Mac は高い。素人は、マウスで十分。
最大限メモリを積めばよいだけ

3年ぐらい、プログラミングしてから考えろ。
まあ、その頃には、たぶんやめてると思うが
0782デフォルトの名無しさん垢版2018/09/06(木) 21:26:39.31ID:BSkJoWVe
初めての言語でExcelVBAって悪くないと思うけどなぁ
Excelのオブジェクトを操作するのもイメージしやすいしすぐにそれなりのもの作れるようになるし
0784デフォルトの名無しさん垢版2018/09/06(木) 21:55:40.77ID:jEPt2f2o
そしてJavaとかへ行って大量のカラムを持った壮大なテーブル作ってぐるぐるSQLするまでがテンプレ
0785デフォルトの名無しさん垢版2018/09/06(木) 23:42:58.44ID:OdtAawkS
>>750
>>751
>VBAの勉強法
VBAの入門書がたくさんあるからまず一冊読んでみ

それから実際に簡単なコードを書いてみること
何かのデータを集計してCSVにして出力しようとか

そうやってだんだん分かってきたら
実務に使えそうなコードを書いてみる

最初は挫折することも多いと思うけど
小さな部品を組み合わせて大きな仕事をする
という方向で考えると上手くいくことが多い
これはVBAに限らずプログラミングの基本
0786デフォルトの名無しさん垢版2018/09/06(木) 23:48:28.62ID:OdtAawkS
>>765
>プログラミングやるならマック
Webサービス作ったりするプログラマになるならMacもいいが
あくまで本業は事務職でVBAも組むだけならWindowsが良い

なぜなら事務の仕事で使うのはMacではなくWin機だろうから
環境が違うことでいろいろ支障が出るかもしれない
0787デフォルトの名無しさん垢版2018/09/06(木) 23:50:42.53ID:OdtAawkS
>>781
ExcelやVBAよりLinuxの方がはるかに難しい
まあ電子工作とかIoTとかやりたいなら
ラズパイは安くて面白いオモチャだと思うけど
0788デフォルトの名無しさん垢版2018/09/06(木) 23:53:18.80ID:OdtAawkS
>>782
VBAは入門用言語に向いてると思うけどね
GUIがあるから動作が分かりやすい

ただもちろん本格的にプログラミングするなら
他の言語もやらないと筋が良くならないね

VBAしか知らない人のコードってただベターっと処理を並べて
OOPどころか構造化もしてないようなコード多く見かけるから
0790デフォルトの名無しさん垢版2018/09/07(金) 00:06:56.77ID:K16bSxkY
感じ方は人それぞれやし
0791デフォルトの名無しさん垢版2018/09/07(金) 00:14:48.37ID:JyggHFXK
>>785
小さな部分を組み合わせることは重要だが、それは一つの観点に過ぎない
プログラミングはトップダウンで考えてボトムアップで作る
VBA上がりの人は大抵このトップダウンで考える部分が抜けてて、その結果>>788の言ってるようなベターっとしたメンテ不能の糞が出来上がる
0792デフォルトの名無しさん垢版2018/09/07(金) 00:20:44.98ID:ZCXZkOYn
>>791
>プログラミングはトップダウンで考えてボトムアップで作る
>VBA上がりの人は大抵このトップダウンで考える部分が抜けてて
そうだね、言いたいことはよく分かるよ

ただ最初からトップダウンで考えるのって難しいんだよ
かなりプログラミングに慣れてから分かってくることで

部品を組み合わせることを続けて訓練していくと
最初からトップダウンで設計できるようになっていく
0793デフォルトの名無しさん垢版2018/09/07(金) 00:25:26.43ID:ZCXZkOYn
>>789
>構造化してないって具体的にどういう感じのコード
関数に切り出して部品化しようって意識もなくて
百行なら百行、必要な処理をそのまま並べてるとか

それで必要な処理とかが増えて
そのまま規模が大きくなっていくと
メンテできなくて破綻する
0794デフォルトの名無しさん垢版2018/09/07(金) 00:28:30.33ID:edPtcLES
VB系から入るのが危険なのって、一番は何が正しくて何が正しくないのかを理解しないまま正しくないものに触れてしまうことだと思う
書籍やWebサイトのサンプルの質が低すぎる
ある程度分別がついてからであれば、あ、これ真似しちゃいけないやつだ、と分かるんだけどな
0795デフォルトの名無しさん垢版2018/09/07(金) 00:49:11.50ID:t4Ye9HSP
>>793
草生える
そこまで酷いと、ひょっとして操作対象のセルのアドレスや行や列のインデックスとかも動的に取得しないでリテラルでいちいち指定してたりするのか?
0796デフォルトの名無しさん垢版2018/09/07(金) 01:14:28.94ID:ApUN6pL7
>>753
俺が初心者に毛が生えたような人間だからだろうけど、まず「hoge」とかいう全く慣れない単語を使うところから嫌になるんだよな
「a」とか「x」でいいんじゃないのかと
0799デフォルトの名無しさん垢版2018/09/07(金) 08:30:15.06ID:lSyTDt+M
トップダウン、ボトムアップって別にそれでもいいんだけどさ、そういうことを言う奴がプロジェクトを台無しにしてたりもする。
どんなモデルでもある程度のプロトタイピングは必要だし、スパイラルにもなり、テストファーストな部分もある。

ところが頭でっかちで言葉に囚われて、おかしなことになってたりする。
ブックを開くコードも書けなかったら、色々試してその方法を獲得しておく必要があるだろ。
0800デフォルトの名無しさん垢版2018/09/07(金) 08:45:55.51ID:t4Ye9HSP
>>796
見慣れない言葉を使ってるのは、コードの可読性を確保しながら任意の値であることを示すためでは
その観点で言うとアルファベット一文字は論外だし、なまじ意味のある言葉だと既定の固定パラメータだと読み手側に勘違いされるかもしれない
0802デフォルトの名無しさん垢版2018/09/07(金) 09:04:28.96ID:DJ4cwpQn
>>800
などのような説明があるとわかるんだけど、前提とされているのかそういったことを細かく書いてる人は少ない(私が勉強してる間は見たことない)し、なんかやりづらさを感じるのが正直なところ
そもそも自分で作る簡単なやつならaでもxでも何でもいいわけだし
0803デフォルトの名無しさん垢版2018/09/07(金) 09:15:28.79ID:avaKv6NM
>>800
ホゲで可読性があがるとは思えないの
言うなれば男らしさをアピールするために眉毛を繋げてみました
と言ってるようなもの
hogeという文字列を使う人間からはそういうサイコパス的な
不気味さを感じる
0804デフォルトの名無しさん垢版2018/09/07(金) 09:15:40.14ID:t4Ye9HSP
>>802
ぶっちゃけ慣れの問題でしかない
ある程度慣れてくると逆に任意の文字列値を代入することが明らかな箇所でわざわざそのような説明が付されているとわずらわしく感じるようになるぞ
0805デフォルトの名無しさん垢版2018/09/07(金) 09:23:23.85ID:lSyTDt+M
かつてデフォルトという言葉が浸透していなかった頃、かっこつけてるけどみんなが理解しにくい言葉を使う奴はバカだと思ったりもした。

何も考えずに"hoge"や"fuga"を使ってるが"任意のデ―タ"とかの方が良かったか。
0812デフォルトの名無しさん垢版2018/09/07(金) 12:21:03.61ID:alW2eXWh
>>810
プロさんが稚拙なプログラミング論を教えたがるスレや
0816デフォルトの名無しさん垢版2018/09/07(金) 13:13:39.31ID:DJ4cwpQn
>>804
まあそうなんだけどここで言いたいのはVBAを初めてやってみるとエクセルではない何か変な壁みたいのがあるんだよね
大変だよねっていう
0817デフォルトの名無しさん垢版2018/09/07(金) 13:26:38.18ID:unjOkW8g
>>816
そうか?
VB系以外のまともなプロミングができる人がVBA使うと、抽象化されたデータモデルを念頭に置いた作りになるからかなりとっつきにくいけど、
VBAの本で出てくるコードなんか所詮は操作の自動化をしてるだけでしょ
操作手順書のフォーマットだと思えば何も難しいことはないよ
0818デフォルトの名無しさん垢版2018/09/07(金) 14:19:29.48ID:6Cwu36S8
確かにVBAから入った若手はプログラミングが下手
綺麗なコードを書くためにやってはいけない悪い習慣のオンパレード
その元をたどっていくとVBAで身についた癖だったということがちょくちょくある
0820デフォルトの名無しさん垢版2018/09/07(金) 15:59:24.84ID:HPYB0S2c
むしろマトモな感性の持ち主ならvbaでクソコード見すぎてクソコードは悪という考え方が育ってマシな書き方しようとする
0823デフォルトの名無しさん垢版2018/09/07(金) 19:22:19.85ID:ZCXZkOYn
たしかにhogeは慣習だけど筋が悪い命名だと思う
「A123」とかとそんなに大差ない

意味の分かる名前を付けるのが
プログラミングの大原則
0826デフォルトの名無しさん垢版2018/09/07(金) 19:28:03.60ID:AK55G/Fe
フィボナッチ数列ってどうやるの
0827デフォルトの名無しさん垢版2018/09/07(金) 19:28:46.48ID:K16bSxkY
>>816
おまえもしかしてここでvba学ぼうとしとらんか?w
変な壁みたいな奴しかおらんぞここw
0832デフォルトの名無しさん垢版2018/09/07(金) 21:11:03.73ID:B220yqHC
意味がない=どんな予約語や変数とも被らないという大きな役目とメリットがある。
sampleなんてつい使いがちじゃないか……
0833デフォルトの名無しさん垢版2018/09/07(金) 21:19:36.74ID:Vo/2y10q
VBAだけしかできないですが、VBAだけでも完璧に操れるようになりたいです
他の言語で色々やってみろと言われますが、まだデバッグモードもまともに使えませんしSub()とEndSubだけで囲んだだけのものからつい先日卒業したばかりです
まだ他の言語で色々やってみるのは早いでしょうか、もう少し留まって勉強するべきでしょうか
だけれどもVBAでは具体的な成長方法がわかりません
もっとできるようになってVBAでかなり複雑なガントチャートでも作れればオバちゃんたちがもっと楽になるはずなのでそれが目標です
0834デフォルトの名無しさん垢版2018/09/07(金) 21:55:47.81ID:IACFWMzK
>>833
具体的な目標があるんなら、それを実現するために一番いい方法が何か、をまず考えるのがいいと思うよ
それがVBAなら、目標に沿ってVBAを勉強すればいいし。そういう風にしないと勉強しても身につかないしね
0835デフォルトの名無しさん垢版2018/09/07(金) 22:16:01.88ID:ZCXZkOYn
>>832
それは関数を分割するなどしてスコープを分ければいい
「sample」だと名前がかぶるから「hoge」なんて筋が悪い
0837デフォルトの名無しさん垢版2018/09/07(金) 22:22:21.94ID:ZCXZkOYn
>>833
VBAはExcelありきの言語なので
Excelに向いてないことをする必要があるなら
いつといわずすぐにでも他言語を覚えるべき

>複雑なガントチャート
それはVBAで組むもんかなあ……?

C#とかJavaとかPythonとかRubyとか
汎用言語で組みたいなあ
0838デフォルトの名無しさん垢版2018/09/07(金) 22:25:06.15ID:ZCXZkOYn
>>836
>ローカル変数の必要性はかなり低くなる
ん? どういう意味?

グローバル変数を使うって意味なら反対
関数型プログラミングの意味なら良いと思う
0839デフォルトの名無しさん垢版2018/09/07(金) 22:40:50.86ID:+h1u/3vH
>>833
VBAと親和性が高いのはC#

ただ、ガントチャートが作れるかどうかは分からないから、
入れるVSを確認して
0840デフォルトの名無しさん垢版2018/09/07(金) 22:46:28.54ID:B220yqHC
具体コードの中で変数や関数に意味づけするのは当たり前。
ロジック例示でのhogeは全然アリで寧ろそうして欲しい。頭が抽象思考しやすくなる
0841デフォルトの名無しさん垢版2018/09/07(金) 22:49:16.70ID:ZCXZkOYn
>>839
>ガントチャートが作れるかどうかは分からない
いや汎用言語ならどれでも確実に作れるでしょ
しいて言えばGUIが大変とかはあるけど
0842デフォルトの名無しさん垢版2018/09/07(金) 22:59:40.01ID:hj+zNy2i
>>838
「理想的なくらいに分割できたけどグローバル変数使ってます」では語義矛盾だよねw
「ローカル変数がいらなくなる」ってのもうまく分割できたかどうかのバロメーターになり得ると思ってる。
0843デフォルトの名無しさん垢版2018/09/07(金) 23:02:07.62ID:JTm7XZoK
ブックA
ブックB
ブックC
・・と複数のブックがあったとして、
ブックAとブックBを参照して値をコピーしてブックCに張り付けるとき
ブックAをオープン
ブックBをオープン
ブックCをオープン
for文
if( workbooks("ブックA").worksheet("Sheet1").Cells(X,Y).value = workbooks("ブックB").worksheet("Sheet1").Cells(X,Y).value )
ブックCに値を設定

という具合に、ブック名から指定して参照するコードを組みこんでいるのだが
処理が複雑でなければ処理速度はさほど気にながらないが、for文がいろいろ重なると、やたら処理速度が重くなる。
0845デフォルトの名無しさん垢版2018/09/08(土) 07:16:31.62ID:fPoBP/2C
どうゆうのだよ?
0846デフォルトの名無しさん垢版2018/09/08(土) 08:14:31.41ID:ZUEeKRTR
>>844
PowerShellで処理して結果をExcelファイルに書き込むってこと?
なら結構好き
逆にExcelファイルからデータ読み出してDBに書き込むとかもよくやる
0847デフォルトの名無しさん垢版2018/09/08(土) 08:34:54.76ID:Gh/NaJW5
おまえらって偉そうに講釈垂れてるけど、
職業はPGやSE又はそれらに類似する職種、業務をしていて、尚且つ最低でも10年はバリバリ働いてるんだよな?
0848デフォルトの名無しさん垢版2018/09/08(土) 08:51:21.15ID:A8WV5L+6
>>844
好き嫌いはどうでもいいけど日常作業としてよくやるね
逆にExcelをVBAで拡張して操作感UPみたいな使い方は業務では意外と需要が少ない
0850デフォルトの名無しさん垢版2018/09/08(土) 09:51:54.75ID:qA6q8f56
>>834>>837>>839
アドバイスありがとうございます
大事なことを言い忘れてましたが、職場ではVBA(VBE)以外は触れそうにありません…
それでも家ではC#の勉強をして、プログラミング能力を高めてから複雑なガントチャート作りに取り掛かった方が良いでしょうか?
0851デフォルトの名無しさん垢版2018/09/08(土) 10:22:59.24ID:LzkjeqyB
たのしいRuby 第5版、2016

まず、この本を3回読む

C# なんて、難易度が高すぎる。
数年後に考えろ
0852デフォルトの名無しさん垢版2018/09/08(土) 10:26:22.67ID:CibhxHgt
でもC#ってWindows標準でコンパイラついてるからメモ帳でもプログラム作れるよな
会社のPCでもC#使えるのでは
0853デフォルトの名無しさん垢版2018/09/08(土) 10:41:58.97ID:5ZaWBhkV
相変わらず出ました Rubyヴァカ
0854デフォルトの名無しさん垢版2018/09/08(土) 11:47:20.96ID:VbyUB+Pi
それ言い出したらVBコンパイラも付属してるし、VBscript、バッチ、ブラウザ経由のJavaScript、標準で使える言語はいくつもある
言語ごとの文法の違いよりも、基本アルゴリズムをたくさん知ってる方が重要
0856デフォルトの名無しさん垢版2018/09/08(土) 12:19:15.64ID:tr1EMUo1
「キッティングがいいとこ。」
という表現をどのように解釈するか。
オレには疑問の余地はなかったが世の中は広いな。
0857デフォルトの名無しさん垢版2018/09/08(土) 12:31:29.06ID:1I6Cu01I
ペッティングならわかるのにと
お思いの皆さん
0858デフォルトの名無しさん垢版2018/09/08(土) 12:37:53.10ID:087CzYJy
ペッティングもやったことないからよく知らんのよね実際
0859デフォルトの名無しさん垢版2018/09/08(土) 12:42:35.05ID:A8WV5L+6
現代のプログラミングではアルゴリズムは必須の知識ではない
なぜならモダンな殆どの言語が標準/非標準のライブラリで様々なアルゴリズムを網羅しているから
不幸にも既存の実装がなく自作が必要になった場合でもそのときになってから調べればいい
調べて実装したらライブラリ化して最悪アルゴリズムを忘れても問題ないようにする

アルゴリズムを学ぶ暇があるならオブジェクト指向関連の考え方やテクニック、イディオムを学んだほうがいい
あとは他人が作ったエコシステムに素早く馴染む学習能力と好奇心が現代のPGにとって重要
これらはVBA縛りではなかなか身につかない
0860デフォルトの名無しさん垢版2018/09/08(土) 13:11:32.84ID:5nxCoU1r
>>843
再計算とスクリーンアップデートをオフにしてます?
自分も最初それをせずに、遅かったことがあったので。
0861デフォルトの名無しさん垢版2018/09/08(土) 13:36:10.29ID:A9lVpQKd
>>852
マジか
うちの会社指定外ソフトのインストール不可だから、
VBA、VBScript、JScript、javascript、PowerShellしか使えないと思ってた
C#って言語の難易度的には高い方?
0862デフォルトの名無しさん垢版2018/09/08(土) 13:54:25.52ID:j/6nk0eH
低学歴知恵遅れアルゴリズムのライブラリがあっても
適切なアルゴリズムが選択できない

このスレにいるような
低学歴知恵遅れによくあること

まずまともな教育を受けてないからな
0863デフォルトの名無しさん垢版2018/09/08(土) 13:58:13.13ID:A8WV5L+6
ライブラリが充実していない言語ではアルゴリズムを選択するという機会に恵まれない
機会が少ないので適切なアルゴリズムを選択する能力は退化していく
そもそも選択肢がないのだから当然の帰結だネ
0867デフォルトの名無しさん垢版2018/09/08(土) 14:16:13.09ID:rZUz8OwV
誰かが作った部品を組み立てるだけなのと、最適な部品を調達 (自作) できるのでは、どっちがいい結果が出せるか
パソコンのソフトやハードに限らず、どこの業界にも言えることだけど
0868デフォルトの名無しさん垢版2018/09/08(土) 14:23:29.56ID:1I6Cu01I
   /|∧ヘ
  /( (ノ人
  ハ / ̄\/)
 ( Y## ヽ>
 (>|## (_Z
 (ノ|## (_ノ
 ( ハ## /_>
  (/ヽ_r(_ノ|
  レ(|(ノソ||  __
   ヽハノ|| ///
  __  ||/ / /
  ヽ \ ||//
  | \ ヽ|| ̄
  ヽ__>||
      ||
どんなかなしいことが
あっても
やせがまんでもいい
ひのあたるばしょで
つよくいきていこうと
おもふ そう
たんぽぽのように
0869デフォルトの名無しさん垢版2018/09/08(土) 14:26:33.76ID:A8WV5L+6
@最適な部品を調達(自作)して最高の結果をだすには時間と投資と努力が必要
A手頃な既製品で合格基準を十分に満たす結果をだすのは簡単

他の業界は知らんがIT業界ではAのほうが重要な事実だなと気がついたのでOSS文化が発達した
更に言うと今は、調達(自作)した部品よりも、手頃な既製品のほうが高品質なんだよね
0870デフォルトの名無しさん垢版2018/09/08(土) 14:30:12.92ID:CibhxHgt
>>861
開発環境と、作ろうとするものによるかな
クラスの少ない簡単なコンソールアプリを作るくらいならメモ帳使って手打ちでも作れる
複雑なアプリや本格的なGUIアプリとかを作ろうとするならVSや高機能なテキストエディタを使わないと大変なんじゃないかな
手打ちでも出来なくはないみたいけど俺には無理
0873デフォルトの名無しさん垢版2018/09/08(土) 16:13:45.31ID:nMBTba9u
>>850
ガントチャートならVBAで組むのが良いね。
まず前提として、君は複雑と言ってるけど"ちゃんとした"ガントチャートなら作るの無理でしょ。
高い金出して買うんだよ。
MSProjectとかさ。
(あれがちゃんとしてるかどうかはおいといて)

だから作るということはさ、結局ちょっとしたガントチャートということになる。
その程度で良いのならVBAでExcel上に作るのがお手軽でいいよねという話。

本格的なのは頑張って作る人もいるかもしれないけど大変だし、初心者には無理。
0874デフォルトの名無しさん垢版2018/09/08(土) 16:17:38.65ID:nMBTba9u
>>869
こういう人をコ―ダーと呼ぶ。
最底辺の人だね。

アルゴリズムを暗記する必要は無いが考え方を勉強することは必要だ。
上手いやり方をその場で産み出せない人は結局どんな言語でもダメだね。
0877デフォルトの名無しさん垢版2018/09/08(土) 16:37:13.48ID:CibhxHgt
仕事でVBA使うために枯れたアルゴリズムを自作したその瞬間は達成感が得られるかもしれないけど、その作業の客観的な価値とか自分の投入した労力に対する報酬とかいろいろ考えていくとアホらしくなるよね
0878デフォルトの名無しさん垢版2018/09/08(土) 16:45:02.84ID:1I6Cu01I
でも楽しいですよ
0880デフォルトの名無しさん垢版2018/09/08(土) 17:08:17.11ID:H4VAUmaz
データの範囲やパターンが限られてる場合は、汎用品より最適化した方がパフォーマンスが出せることも
まあそこまでパフォーマンスの必要な作業はVBAでやることじゃないけど
0881デフォルトの名無しさん垢版2018/09/08(土) 17:20:37.82ID:A8WV5L+6
>>874
日常的に必要となるようなアルゴリズムやデザインパターンなどはとっくに出尽くして枯れてるものなんだよ
なので「産み出す」とか言ってる時点で不勉強とわかる
キミはコーダー以下のアマチュアなんだろうけどそれにしたってもう少し勉強したほうがいいよ
0882デフォルトの名無しさん垢版2018/09/08(土) 17:25:42.37ID:nMBTba9u
既に存在するアルゴリズムを自分でコーディングする話と勘違いする所が痛い。
アルゴリズムなどと呼べない簡易なものから上手いやり方ってのはある。
そういうやり方を暗記してもダメで、その時は上手いやり方が有るんだなあと思っとくだけで良い。

ライブラリを組み合わせてある機能を作ったら、それらのライブラリを組み合わせるとは気付かなかったと言われることもある。
ライブラリを知ってただけじゃダメなんだね。

全く新しいものと言っても結局は既存の組み合わせなんで、その組み合わせを思いつくかどうかはいろんなアルゴリズムを見ておくことが重要。
0884デフォルトの名無しさん垢版2018/09/08(土) 17:32:17.53ID:A8WV5L+6
>>877
例えば閑職に追いやられて暇な人が世の中には沢山いる
彼らはとにかく自分が頑張った証拠がほしいので簡単なことを無駄に大げさにしてから物事に取り組む習性がある
時間が有り余っていてかつ他者と失敗や成果を共有していないから組織としての効率は度外視で活動できるんだね
何がいいたいかというとどんな場合でも効率ばかりを優先するのが正解とは限らないということだね
あえて既製品を使わずに自作するというのも仕事がないときには必要なことなのかもしれない
0885デフォルトの名無しさん垢版2018/09/08(土) 17:41:40.38ID:A8WV5L+6
>>880
パフォーマンスが必要ならパフォーマンスを出すための既製品を使うべきだろうね
身近な例だとRDBを使った検索とかだね
適切な道具を使う
道具に合わせて設計する
これがシステム開発に必要な姿勢だ
0886デフォルトの名無しさん垢版2018/09/08(土) 17:43:30.91ID:kLYvMw1g
自作できる能力があるなら仕事はあるだろ
そういうガチの無能はツールを自作するのではなく一日中人力VLOOKUPしてるよ
0887デフォルトの名無しさん垢版2018/09/08(土) 17:50:48.46ID:2ImNi24M
おまえらいつまで頭の悪さを競い合ってんねん…
しかもID真っ赤にしてまで…
おバカキャラの再ブレイク狙ってるんか知らんけど逆張りにもほどがあるやろw
0889デフォルトの名無しさん垢版2018/09/08(土) 17:55:33.49ID:oKnpK5oG
そもそもなんで既成品を使うことがアルゴリズムの考え方を勉強してないことになってるんだ???
自論広げたいがためにまた前提を妄想してるのか
0890デフォルトの名無しさん垢版2018/09/08(土) 18:03:41.67ID:A8WV5L+6
>>882
大事なのはアルゴリズムを部品化して組み合わせて最小の労力で望む水準の成果を得る訓練をつむこと
日常レベルにない高度なアルゴリズムをブラックボックスとして使いこなす訓練をつむこと
そのためにアルゴリズムの知識は粒度が小さすぎてあまり役に立たない
こういった感覚はアルゴリズムではなくデザインパターンの学習などで磨かれるものだ
0891デフォルトの名無しさん垢版2018/09/08(土) 18:33:16.32ID:Suz5B3Kg
デザインパターンはいかん
柔軟な思考ができなくなる
いっとき勉強したけど実務での実用に耐えるものはなかった
0892デフォルトの名無しさん垢版2018/09/08(土) 18:37:51.76ID:kpulKfEW
アルゴリズムは効率最優先って絶対的前提があって目的に特化しすぎてるから組み合わせや応用とは最悪に相性が悪い
0893デフォルトの名無しさん垢版2018/09/08(土) 18:45:08.99ID:j/6nk0eH
で、その小さい糞アルゴリズムが凝縮して
糞遅くなる

ID:A8WV5L+6 ← コイツなんかその典型
0894デフォルトの名無しさん垢版2018/09/08(土) 18:47:28.27ID:j/6nk0eH
12時間かかってたのが
11時間30分になりました

コレはコレでホントだったら凄い成果だ
30分も短縮できてるワケだからな

しかし全体がクソすぎて
この成果もゴミといっていい
0895デフォルトの名無しさん垢版2018/09/08(土) 18:50:44.88ID:kpulKfEW
>>891
俺はデザインパターンを始めて勉強した時はOOPってこんな使い方できるんだって世界観が広がったけどなー
発想力のブレイクスルー起きたよ
めちゃ柔軟になった
逆に感じる人も居るんだ
0896デフォルトの名無しさん垢版2018/09/08(土) 18:52:22.15ID:j/6nk0eH
VBなんかつかう程度しか用がないようなアホが
なににデザインパターンを適用するワケ
0897デフォルトの名無しさん垢版2018/09/08(土) 18:54:01.66ID:j/6nk0eH
デザインパターンを駆使しないと構築できない
EXCEL VBAによる大規模システム

そんなもんあんのか
0899デフォルトの名無しさん垢版2018/09/08(土) 18:57:09.94ID:j/6nk0eH
まず低学歴は
なにがボトルネックになることになるか
その予見ができない

まずそういった分析ができない

その分析ができて
さらに適切なアルゴリズムを選択することになる

低学歴知恵遅れには
まずこの二つはできない
0900デフォルトの名無しさん垢版2018/09/08(土) 18:59:13.24ID:j/6nk0eH
そして低学歴知恵遅れほど
ほぼ効果がない最適化を行って
自己満足をしてる

問題はそこじゃない認識がない
最終的に認知の問題にまで辿りつく
0901デフォルトの名無しさん垢版2018/09/08(土) 19:02:23.91ID:CibhxHgt
サマータイムスレで相手にされないからってこんなとこまで出張して憂さ晴らししてる半角先生かわいい
0902デフォルトの名無しさん垢版2018/09/08(土) 19:04:07.84ID:j/6nk0eH
オレがいかないから
すたれてるやん

オレがいったのは1スレ目だけだからな
あれでもう十分周知できたからな

サマータイムで騒いでんのは低学歴知恵遅れしかいないと

で、きてほしいの?
いかないけどな
0903デフォルトの名無しさん垢版2018/09/08(土) 19:05:58.11ID:nMBTba9u
>>892
>>895
アルゴリズムを勉強するという意味を勘違いする奴多数。
俺に言わせれば君のいうデザインパターンもアルゴリズムも一緒。
別にデザインパターンを勉強してもデザインパターンを使うわけじゃ無いだろ。
物事の考え方の話でね。

ライブラリばかり言ってデザインパターンやアルゴリズムを蔑ろにしてる奴なんてライブラリの組み合わせも碌に出来ない奴になるわけだ。
結局数学が出来る奴が強いというのも同じことでね。
0904デフォルトの名無しさん垢版2018/09/08(土) 19:07:17.93ID:j/6nk0eH
低学歴ほど数学数学いうな
中学校や高校の数学できる程度の低学歴知恵遅れに多い

分かりやすい
0906デフォルトの名無しさん垢版2018/09/08(土) 19:10:01.52ID:j/6nk0eH
オレのレスが気になってしょうがないから
読んでるだろオマエ

分かりやすい
0908デフォルトの名無しさん垢版2018/09/08(土) 19:13:44.30ID:tr1EMUo1
>>859
VBAでアルゴリズムっぽいライブラリ
VBAでデザパタっぽいライブラリ

それぞれ教えてよ
0909デフォルトの名無しさん垢版2018/09/08(土) 19:19:11.24ID:fPoBP/2C
プロさん達いつになったらこの井戸端プログラム放談やめるの?
0912デフォルトの名無しさん垢版2018/09/08(土) 19:32:10.72ID:kpulKfEW
>>903
だからさっきから言ってるけど
アルゴリズムは目的に特化しすぎ・具体的すぎて組み合わせや応用と相性が悪いんだって
逆にデザインパターンは問題を具体的しすぎずに様々な場面に応用・組み合わせる前提で考えて構成要素にも抽象的な部分を多く残している

同じだというならなぜ君や自分よりずっと優秀で経験も豊富な世界中のプログラマ達が二つの言葉を明確に使い分けているんだい?
君に言わせれば同じ物なのかもしれないがそう考えてるのはおそらく君だけだぜ?
0914デフォルトの名無しさん垢版2018/09/08(土) 20:08:13.84ID:nMBTba9u
>>912
だから、それは勉強したアルゴリズムやデザインパターンを使うという観点の話だろ。
俺が言ってるのはそういう話じゃない。

上手いやり方を思いつく能力を鍛えるという話。
アルゴリズムもデザインパターンも先人が上手いやり方を模索して見つけて来たものだろ。
0915デフォルトの名無しさん垢版2018/09/08(土) 20:15:21.69ID:nMBTba9u
小学校時代、進学塾で鶴亀算なんかをやってた奴の中には中学で方程式の考え方に馴染めずに鶴亀算式のやり方で解こうとするようなのがいる。
しかし、しばらくすればやっぱりそいつはできる奴となる。

もっとも、小学校時代に習ってたものをそのまま適用しようというような勉強ばかりしてたようなのはダメなんだが。
0916デフォルトの名無しさん垢版2018/09/08(土) 20:16:42.93ID:fPoBP/2C
自省する鶴亀算が得意なプロさん可愛いw
0917デフォルトの名無しさん垢版2018/09/08(土) 20:39:56.45ID:kpulKfEW
>>914
だからアルゴリズムは特定の目的に特化しすぎてるからそういうのには向いてないんだって
最大値を求めるアルゴリズムを知ってても最大値を求めること以外にはほとんど応用できないし大して参考にもならん
発想力を鍛えるにはもとから発展性・応用性を考えてまとめられたデザインパターンの方がいい
0918デフォルトの名無しさん垢版2018/09/08(土) 20:53:24.52ID:fPoBP/2C
デザインパターンを応用しようとする本末転倒なプロさん可愛いw
0919デフォルトの名無しさん垢版2018/09/08(土) 20:53:51.47ID:j/6nk0eH
つまりデザインパターンなら
低学歴知恵遅れでも井戸端会議に参加しやすい
いくらでもテキトーなことがいえる
0920デフォルトの名無しさん垢版2018/09/08(土) 20:56:04.05ID:j/6nk0eH
処理手順と
ソフトウェアの構造はまったく関係ないからな
0921デフォルトの名無しさん垢版2018/09/08(土) 20:57:45.44ID:j/6nk0eH
バカでもペンキの色ぐらいなら選べる
キレイにペンキを塗れなくてもな
0922デフォルトの名無しさん垢版2018/09/08(土) 21:04:46.02ID:j/6nk0eH
すべてのアルゴリズムが特定の目的でしか使えないとかいってる時点で
オツムの程度がしれてるからな
0923デフォルトの名無しさん垢版2018/09/08(土) 21:20:24.61ID:fPoBP/2C
なぜかひきこもりがギアを上げてきよったw
0924デフォルトの名無しさん垢版2018/09/08(土) 23:11:24.15ID:nMBTba9u
>>917
あきれるほど頭が固いというか、柔軟性からは程遠い奴だな。

最大値どころかアルゴリズムなんてなにひとつ知らないよとでも言わないと理解できないか?
アルゴリズムなんて知る必要無いだろ。
というのは言い過ぎなんだけどさ。
これでも俺が先に言ったことに何も矛盾して無いんだよ。

アルゴリズムなんて知る必要無いけど、アルゴリズムを勉強する必要は有るんだよ。
それは使うためじゃ無くて、問題を解決する方法を見つけるために。
新しいアルゴリズムを発明するために。

プログラマーってのは、大したことない、名前も無い、故に誰も知らないアルゴリズムやデザインパターンのようなものを発明しながらプログラミングしてるようなもんなんだね。
0926デフォルトの名無しさん垢版2018/09/08(土) 23:22:05.43ID:yUsEKjNJ
クライアント「使い捨てVBAツールなんだからアルゴリズムとかデザインパターンとか
こ難しいことはいいからさ、ちゃんと納期までに仕上げてくれよな。」
0927デフォルトの名無しさん垢版2018/09/08(土) 23:22:21.74ID:tr1EMUo1
「アルゴリズムは特定の目的に特化しすぎてる」

クソ雑魚の自分でもこれには首をかしげざるを得ない
0928デフォルトの名無しさん垢版2018/09/08(土) 23:25:44.95ID:A8WV5L+6
>>924
おめーも随分頭かてえなあ
問題を解決する方法を見つけるためにはアルゴリズムじゃなくデザパタみたいな適切な粒度で抽象的なフレームがいいんだって
アルゴリズムは粒度が小さすぎて具体的すぎるので知識を違う場面で応用するには向かない
半導体物性をいくら学んでもパーツからパソコンを組み上げることはできねえの
0929デフォルトの名無しさん垢版2018/09/08(土) 23:30:09.94ID:aYm0HwBa
>>847
プログラミングで飯を食ってるわけじゃなくて、しごとのなかでエクセルを使う時に利用してるぐらい
0930デフォルトの名無しさん垢版2018/09/08(土) 23:33:18.53ID:nMBTba9u
>>928
ダメだこりゃ。
固すぎる。

半導体物性?
何でPCに関係有るもん持ってきてるんだよ。
後が俺が言ってるのはもっと広い話だぞ。
そ詩を学ぶことはパソコンを組むのに必要だとでも言うべきか。

数学が出来る奴が強いと言うと本当に数学のお勉強が出来る奴と捉えるから始末におえない。
0931デフォルトの名無しさん垢版2018/09/08(土) 23:33:25.98ID:fPoBP/2C
なんか段々おもしろくなってきたw
今後のID:A8WV5L+6から目が離せんですよこれw
0932デフォルトの名無しさん垢版2018/09/08(土) 23:34:40.77ID:A8WV5L+6
>>927
特定の目的に特化してるから効率的に処理できんだよ
そんなこともわからんのか?
アルゴリズムってのは1つの目的を最大限実行効率よく処理するために考えられたものだ
それらを組み上げてより実用的な問題を解決したりメンテナンスしやすくしようってのとは全く別の次元の問題だ
0933デフォルトの名無しさん垢版2018/09/08(土) 23:35:35.36ID:A8WV5L+6
>>930
硬すぎて例えが通じんのはお前だろーが
0934デフォルトの名無しさん垢版2018/09/08(土) 23:36:08.13ID:tr1EMUo1
>>932
いや全然わかりませんね?
0935デフォルトの名無しさん垢版2018/09/08(土) 23:37:13.85ID:j/6nk0eH
バカはその特定の目的が
あちこちの大きな目的を実現するために使われることがわかってない

さすが低学歴知恵遅れとしかいいようがない
0937デフォルトの名無しさん垢版2018/09/08(土) 23:39:57.56ID:nMBTba9u
だいたい、知識を違う場面で応用とか言ってるあたりから勘違いしてるのがよく分かる。

昔から学校の先生でも基礎と応用を勘違いしてるのが多いんだ。
逆なんだよ。
応用と呼んでるのが基礎で、基礎と呼んでいるのは応用じゃ無いけど別のものだ。
受験でも難問と呼ばれるのが本当は基礎カを問うものなの。

教わったことの無いものをその場で搾り出す能力というのはその人間の基本的な能力なんだ。
0938デフォルトの名無しさん垢版2018/09/08(土) 23:40:04.31ID:tr1EMUo1
「アルゴリズムは特定の目的に特化しすぎてる」
 ↑
誰かこれが理解できる人いる???

オレにはまったく理解できないね
オレにはまったく理解できないね
オレにはまったく理解できないね
0942デフォルトの名無しさん垢版2018/09/08(土) 23:44:11.95ID:fPoBP/2C
>>939
バカは黙っとけ今はID:A8WV5L+6のターンや
おもろいとこなのに頓珍漢なつっこみすんなカスw
0943デフォルトの名無しさん垢版2018/09/08(土) 23:44:40.58ID:fPoBP/2C
ほらつまらんくなった
0944デフォルトの名無しさん垢版2018/09/08(土) 23:45:19.69ID:5ZaWBhkV
他で雑談する相手のいない淋しいプログラマの集まりスレ
ここはプログラ「ム」板であってプログラマー板はこの上にあるんだから、そこに逝けよ
淋しいプログラマ諸君
0945デフォルトの名無しさん垢版2018/09/08(土) 23:46:43.94ID:tr1EMUo1
いくら正しい見解を述べて素敵な人格を持っていても半角カタカナで台なし
いくら正しい見解を述べていてもね
0950デフォルトの名無しさん垢版2018/09/09(日) 00:16:29.56ID:b63/Vgkc
バカがしゃしゃるからつまんなくなったんやわ
0954デフォルトの名無しさん垢版2018/09/09(日) 15:24:41.55ID:V1LakR3i
しかも頭悪いからな
本職というの微妙な低学歴底辺ドカタの部類
オレみたいなホンモノのプロフェッショナルじゃないからな
0958デフォルトの名無しさん垢版2018/09/09(日) 17:45:51.83ID:V1LakR3i
低学歴知恵遅れが勝ったつもりでいんのか
パーフェクトゲームでオレが勝ってるのに
0962デフォルトの名無しさん垢版2018/09/09(日) 18:52:02.21ID:uSHfJGvn
一般的には馬鹿だけど、実際に>>961がVBA程度も独学で習得できない池沼レベルの馬鹿なんだったら仕方ないだろう
同じ馬鹿なら努力する馬鹿の方がマシだぞ
0964デフォルトの名無しさん垢版2018/09/09(日) 18:58:06.26ID:uSHfJGvn
というより、スクールに通わないとVBA使えるようにならないようなアレな人がVBAを無理に習得したとして、
それをどれほど役に立てられるだろうか?ということだな
VLOOKUPとかINDEXとかは使えるの?
0967デフォルトの名無しさん垢版2018/09/09(日) 19:14:22.04ID:SzrzrlKB
仕事で社外の人が作ったマクロを使うことがあるのね
それが便利なんよ
んで、こんなん作れたら仕事めっちゃ便利になるなと
事務職なんだけど俺のいるチームにはマクロ作れる人がいないので勉強してみようかと思ってね
0969デフォルトの名無しさん垢版2018/09/09(日) 19:18:01.28ID:jqHbfRUC
ネットに落ちてる程度の知識しか教えてくれないところにお金払って損した、と後で後悔する可能性は高いと思うよ、真面目な話
0970デフォルトの名無しさん垢版2018/09/09(日) 19:18:52.35ID:uSHfJGvn
ちゃんとプログラミングとして基礎から教えてくれるなら価値はあるんじゃない?
チュートリアルをこなすだけなら金の無駄
0971デフォルトの名無しさん垢版2018/09/09(日) 19:28:30.80ID:SzrzrlKB
したらば体験授業を受けてみて判断するかな
そんなんがあんのか知らんが

スクールに通うもう一つの利点は金を払うことによって半強制的に通わざるを得ない状況にするってのがある
俺ほどダメな奴はいないので独学だと挫折する可能性が大いにある…

でも、PC持ってカフェにでも行けばいいのか
いや、勉強せず5ちゃんやるだろうな…
0974デフォルトの名無しさん垢版2018/09/09(日) 20:41:31.05ID:spPVfVtU
>>973
いや割とマジでプログラミングなんかより他のことに時間を割いた方がいいよ
筋トレでも資産運用でも子供と遊ぶでもした方がマシ
0975デフォルトの名無しさん垢版2018/09/09(日) 20:50:20.05ID:jqHbfRUC
部署内にVBAスキルを持った人間がいないということは、君がVBAを習得したりコーディングしたりしたときの苦労の程度を理解してきちんと評価できる人がいないということでしょ
そういう環境にいるなら、凡そ仕事でしか使わないであろうVBAにお金と時間をかけるのは本当に価値があることなのかどうか、真剣に考えた方がいいと思うんだよな
0977デフォルトの名無しさん垢版2018/09/09(日) 20:58:12.27ID:V1LakR3i
ネット de VB()
VBAスキル()
VBA苦労()

オツムの程度相応のレスといっていい

インターネッツでなんでもすべてが分かると思ってるのは
コレはクソニートに多い
オレを評価してくれないのは周囲がワルイ
コレもクソニートに多い
オレを評価できるヤツが周囲にいない
コレもクソニートに多い

まさに典型的なニート脳

ID:jqHbfRUCはクソニートと断定できる
0979デフォルトの名無しさん垢版2018/09/09(日) 21:01:14.49ID:jqHbfRUC
>>976
割と真面目な話、君しか触れないマクロに皆がただ乗りして、君だけがメンテ等のために余計な残業や責任を負担させられるっていうオチになりかねないと思う
0980デフォルトの名無しさん垢版2018/09/09(日) 21:03:38.41ID:SzrzrlKB
>>979
そんなことはないよ
うち某大手企業の特例子会社だから今のご時世残業はさせてもらえない
困った時は本社のIT担当にツケが行くだけかな
0983デフォルトの名無しさん垢版2018/09/09(日) 21:55:04.43ID:3NzXWoK2
とある部署にWinsckコントロール付きのVBAを作ってあげた

意外にも使う人が増えたので、Winsck部分をWindows APIにしてocxを配らなくてよくしてあげた

評判がよくて予算がとれ、VB+Spreadでシステム化した

俺が尊敬するのは、APIで暫定策を持ってきたSIerのオッサンだわ
0984デフォルトの名無しさん垢版2018/09/09(日) 22:00:42.15ID:jq6ENV4l
>>980
本社のIT担当にとっては本当に迷惑だから、そういう魂胆ならば最初から君はVBAを触らない方がいいよ
0985デフォルトの名無しさん垢版2018/09/09(日) 22:07:40.82ID:3NzXWoK2
属人化マクロを正式にシステム化できるかどうかは、作った人が思いのほかシステムセンスがあるときだけだね

基本的に迷惑な俺様マクロは部署内で細々と引き継がれる程度のツールだし、むしろマクロの本懐だろう
0987デフォルトの名無しさん垢版2018/09/09(日) 22:25:20.11ID:V1LakR3i
はっきりいってな
マクロ程度なんか少しやるきあればバカでもチョンでもできる
プログラムを書くだけなら低学歴知恵遅れですらできる

この板をみれば分かるとおりな
0988デフォルトの名無しさん垢版2018/09/09(日) 22:42:18.67ID:sjea5Gkj
>>987
それは正しいと思う
電車の運行や貨物船の航行は業者に任せるのが当然だが、いまのIT活用は
バイクや自家用車の運転すら他人に任せようとしてるのに例えられる
0990デフォルトの名無しさん垢版2018/09/09(日) 23:32:48.13ID:sjea5Gkj
そういやここ、「初心者のための定番サイト」みたいなテンプレがないんだな。
改めて気付いた。
0991デフォルトの名無しさん垢版2018/09/10(月) 01:08:54.71ID:IjRjzpeI
>>971
なんかVBAマクロを作るマンガみたいなのがあった気がする。

個人的には「自分にしか理解できない」みたいなマクロは作るべきではないと思う。
ので、仕事でどうしても使うなら、よほど効率の悪い業務を改善できる(かつ自分しか使わない)時とか、
システムの不具合・障害その他の問題でやむなく使わざるを得ない(かつ自分しか使わないしすぐ使い捨てる)時とか、
>>983のように最終的にシステムに組み込むところまで持って行ける技能と情熱があるとか、
そういう時に限った方が良いような気はする。

とは言え、自分も作ったヤツが異動後もその職場の標準ツールみたく運用されてしまってるので、人のことは言えないけど。
0992デフォルトの名無しさん垢版2018/09/10(月) 04:16:31.94ID:MO8YBwD2
>>971-976
プログラミングはかなり実用的なスキルだと思うけどな
それより実用的なスキルは
自動車免許と英語くらいしか思いつかない
0993デフォルトの名無しさん垢版2018/09/10(月) 07:57:15.42ID:qux718TL
マクロ作成者のスキルは、Rangeオブジェクトの番地の有無でわかるよね

A1とかを文字として定数、編集していたらアウト、名前つき範囲でoffsetで動き回っていたら本職
0994デフォルトの名無しさん垢版2018/09/10(月) 08:18:44.33ID:Sizt7IWZ
Range("A1")だけは認める派
※1シート1テーブルで且つ1行目からテーブルが始まる場合に限る
0997デフォルトの名無しさん垢版2018/09/10(月) 11:08:43.93ID:XPvgn9wi
人に頼めないことだけやるてつまり食って寝てればいいのか
0999デフォルトの名無しさん垢版2018/09/10(月) 11:13:13.95ID:BcdHqxqC
エロ動画鑑賞とか射精とかも頼めんやろ
10011001垢版Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 18日 4時間 17分 9秒
10021002垢版Over 1000Thread
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/

▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。

ニューススポーツなんでも実況