[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 03/22 05:48 / Filesize : 289 KB / Number-of Response : 1047
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Excel VBA 質問スレ Part57



1 名前:デフォルトの名無しさん mailto:sage [2018/09/10(月) 21:42:39.57 ID:K1uuwFLt.net]
ExcelのVBAに関する質問スレです
コード書き込みや作成依頼もOK


※前スレ
Excel VBA 質問スレ Part56
mevius.5ch.net/test/read.cgi/tech/1534976724/

388 名前:.net mailto: 「良い」にも色々あるからな
まともなプログラミングの基礎のない低スキルな人間が、新しいことを一切学ばずとも20年間仕事できてるわけで、これはすごいことだよ
[]
[ここ壊れてます]

389 名前:デフォルトの名無しさん [2018/09/24(月) 20:28:51.56 ID:5zI+X6hO.net]
>>370
当時からガチ勢と比べれば見劣りすることだらけだったわw何知ったかしとんねんプロさんwwww

390 名前:デフォルトの名無しさん mailto:sage [2018/09/24(月) 20:48:27.78 ID:E4VB1fuR.net]
>>372
使い易さなんて他の言語との相対的なもの
他の言語の便利機能知ってしまったらあの機能もないのか…とかこの機能があれば…ってなるのはしょうがない

>>374
はいはい w

391 名前:デフォルトの名無しさん [2018/09/24(月) 20:54:52.18 ID:5zI+X6hO.net]
>>375
うむ、バカはしゃべらん方がよろしいw

392 名前:デフォルトの名無しさん mailto:sage [2018/09/24(月) 21:28:35.65 ID:Hov49HPU.net]
くだらない言い合いでスレ伸びまくりで草

393 名前:デフォルトの名無しさん mailto:sage [2018/09/24(月) 21:48:48.21 ID:GrunNCaI.net]
エクセルVBAは(ユーザーの)エクセルの操作を支援する場面において無類の力を発揮する。
しかしちょっと込み入った処理をしようとすると近代的な言語で書きたくなることは確かにある。

そこで質問です。
エクセル上でボタンを押す
→VBAでイベントを受ける
→外部プログラムにSelectionを渡す
→Selection(Range)を元に処理を実行
→処理結果を二次元配列データでVBAで受け取る
→VBAでデータを加工する。
→ワークシートにデータを書き出す。
尚、本エクセルは共有フォルダ上において複数名が交代で使用する。

こういったことがしたい場合何で書いたらいい?C#?PowerShell?

既存のVBAも活かしたいので、全部C#とかに一新しろっていう回答は無しでお願い。

394 名前:デフォルトの名無しさん mailto:sage [2018/09/24(月) 21:53:45.14 ID:QDf0aD0O.net]
VSTOでアドオンだな
VBA資産とかいうゴミは捨ててC#で一新しよう

395 名前:デフォルトの名無しさん mailto:sage [2018/09/24(月) 21:56:06.10 ID:NcXWYl5J.net]
>>378
csvか何かに吐き出せばどんな言語でも処理できるっしょ
ってかその程度ならvbaで頑張るわ

396 名前:デフォルトの名無しさん mailto:sage [2018/09/24(月) 22:02:20.31 ID:Z99vN/yN.net]
>>378
> →Selection(Range)を元に処理を実行
> →処理結果を二次元配列データでVBAで受け取る

この2点からしてVBAで完結する案件
最初からRange→配列にして処理すればいいからね



397 名前:デフォルトの名無しさん mailto:sage [2018/09/24(月) 22:19:41.01 ID:GrunNCaI.net]
>>380,381
シンプルに書きすぎた。
たとえばSelectionの中身がファイルのパスで、そのファイルが複雑なデータ形式(たとえばAutoCAD dwg)を外部プログラムで解読したいとする。
(VBAのクラス関連の機能がショボすぎて無理だったので、前にC#で書いたものがある)
これをVBAから呼び出して使いたいってこと。

諸事情によりエクセルブックと同じフォルダにps1なりdllを置く必要があって、これを呼び出せると助かる。

398 名前:デフォルトの名無しさん mailto:sage [2018/09/24(月) 22:24:01.34 ID:Z99vN/yN.net]
>>382
じゃあSelectionとか関係なくファイルパスを引数にするDLLを書いてVBAから呼び出せばいいじゃん。
VBA側では
ByVal path As String


399 名前:デフォルトの名無しさん mailto:sage [2018/09/24(月) 22:34:16.30 ID:Z99vN/yN.net]
>>382
まあCだと諸般の事情から文字列を渡す場合でも
ByVal path As Stringじゃなくて
ByRef path As Varian ってインタフェースがいいわけですが
C#だと知らん

400 名前:デフォルトの名無しさん mailto:sage [2018/09/24(月) 22:44:58.17 ID:sPlVwsRd.net]
>>378
VBA->C#(COM)->PowerShell->(PS, C#, CMD, VBS, etc.)

401 名前:デフォルトの名無しさん mailto:sage [2018/09/24(月) 23:06:47.65 ID:GrunNCaI.net]
>>383,384,385
同じフォルダのDLLを呼ぶように出来るの?
COM使うとしたらregasmが必要になるらしいけど・・・
ネットワーク共有フォルダ上のは設定出来ないのでは?
あ、遅延バインディングで出来るんだろうか

402 名前:デフォルトの名無しさん mailto:sage [2018/09/24(月) 23:17:50.47 ID:Z99vN/yN.net]
>>3

403 名前:86
自作DLLをVBAから呼ぶっていう単純な話だよね?
別にどんなフォルダにあろうと関係ないけど。
あとSelectionそのものじゃなくて配列化したデータを渡すんだったらCOMなんていらなくて
WIN32APIだけでできる。
[]
[ここ壊れてます]

404 名前:デフォルトの名無しさん mailto:sage [2018/09/24(月) 23:30:05.56 ID:3gV95ADu.net]
要はCADデータからメタ情報を抽出して、できればExcel形式で一覧化したい系の?

405 名前:デフォルトの名無しさん mailto:sage [2018/09/24(月) 23:46:24.03 ID:GrunNCaI.net]
>>387
そうだね。.NET系のDLLの関数を使いたい系。
COM登録せずに呼び出す方法あるのか。
参考URLとかもらえないだろうか。

>>388
メタ情報じゃないかなー図形情報の位置関係から特定の情報だけリストアップしてる。
まぁ例だからこれに限った話じゃないのだけど、VBAで書き直すのは無理ゲーすぎる。

406 名前:388 mailto:sage [2018/09/25(火) 01:06:10.25 ID:s1AsV/RM.net]
>>389
確かにそれだと自作DLLぐらいしか解決策なさそうだな。
んで、C#で書いた.NET系のDLLの関数をRegAsm使わないで呼び出したいと・・・悪いけど正直やったことない。
が、DLLをEXCEL.EXEと同じ所に置けるなら↓の方法が使えるかもしれない。
www.ka-net.org/blog/?p=6198
全然見当違いだったら申し訳ないが。



407 名前:デフォルトの名無しさん mailto:sage [2018/09/25(火) 18:07:06.26 ID:HENVIdME.net]
フォームにオプションボタン1,2,3、リストボックス1,2,3を設置
オプションボタン2にチェックがあるとき、リストボックス2表示、リストボックス1,3は非表示
という具合に、オプションボタンにチェックがあるときに対応するリストボックスを表示、それ以外を非表示にしたいです

Private Sub UserForm_Activate()
If OptionButton1.Value = True Then
ListBox1.Visible = True
ListBox2.Visible = False
ListBox3.Visible = False

ElseIf OptionButton2.Value = True Then
ListBox1.Visible = False
ListBox2.Visible = True
ListBox3.Visible = False

ElseIf OptionButton3.Value = True Then
省略
end if

と書いてみたのですが、リストボックスの表示、非表示をコントロールできません
どうすればいいでしょうか

408 名前:デフォルトの名無しさん mailto:sage [2018/09/25(火) 18:25:16.89 ID:Rh4u2+TF.net]
>>386
プロフェッショナルなら可能

409 名前:デフォルトの名無しさん mailto:sage [2018/09/25(火) 18:35:56.01 ID:quZOCI3i.net]
>>391
オプションボタンのクリックイベントに書かないと動かなくて当然

410 名前:デフォルトの名無しさん mailto:sage [2018/09/25(火) 19:09:20.22 ID:5hhJfzHj.net]
>>389
まず、そのDLLはCOMなのか、通常の呼び出し用なのか、.NET用なのか

COMなら参照設定なりCreateObjectなりで
通常のDLLならDeclare Function(SUB)で呼び出せば良いだけ

.NETのDLLは.NET以外から呼び出すのは難しいので、素直にCOM公開する方が楽


まあその相手方(たとえばAutoCAD?)がCOM公開してくれるのが一番楽だろうけど

411 名前:デフォルトの名無しさん mailto:sage [2018/09/25(火) 19:09:27.10 ID:HENVIdME.net]
>>393
あーそうでした!お恥ずかしい
ありがとうございました

412 名前:デフォルトの名無しさん [2018/09/25(火) 19:15:41.25 ID:SdejvHFK.net]
すみません、切実に助けて頂きたいです。
現在、VBAからoracle12cにado接続してデータアップデートを行う処理を作成しています。
ですが、更新はうまく行くのですが、なぜか処理件数がどうしても0になってしまいます。
何時間も色んなサイトを参考にしたり、したのですが、ダメで…
色々なサイトにあるソースをコピペして接続先やテーブル名のみ変えて貼ったりもしてみましたが、実行するとやはり更新はされるのに処理件数が取得できません。
もう自分ではどうすることも出来ず、どなたか助けて下さい…お願いいたします。

413 名前:デフォルトの名無しさん mailto:sage [2018/09/25(火) 20:31:14.47 ID:ObO6oAGo.net]
>>396
どうやって取ろうとしている?

414 名前:デフォルトの名無しさん mailto:sage [2018/09/25(火) 20:41:07.98 ID:/T1GixS7 ]
[ここ壊れてます]

415 名前:.net mailto: >>396
当然、これを見てlong型の第2引数を指定した…ってのは勿論やったんだよね?
https://msdn.microsoft.com/ja-jp/library/cc364125.aspx
[]
[ここ壊れてます]

416 名前:デフォルトの名無しさん [2018/09/26(水) 00:30:33.04 ID:17jq3B2z.net]
WinScard API使ってリーダーに設置したカードのIDmをセルに入力させたいのですが、うまく機能しません。
サンプルコードがありましたらご教示願います。



417 名前:デフォルトの名無しさん mailto:sage [2018/09/26(水) 01:13:21.41 ID:6OKvzXmf.net]
>>396
プロパイダ(ドライバ)によってはレコード件数返さん奴があったはず
一回プロパイダ変えて試してみ

最悪は更新と同じ条件のselect投げて件数取得してから更新かけれ

418 名前:396 [2018/09/26(水) 09:21:14.19 ID:rrNz/9UY.net]
397、396
コマンドオブジェクトから、以下のようにしてやっていました。
com.execute(re)
comはADODB.COMMANDで、updete文を設定してあり、更新自体はうまくいきます。
reはlong型の変数です。
マニュアルのとおり、コネクションでexecuteもやってみたのですが、結果は返らず…

400
Microsoft ACTIVEX data objects 6.1を使ってみているのですが、ほかのバージョンにしてもダメでした…
ADO接続を使用する上で、必要な参照が上記以外にあるのでしょうか…


皆さんすみません、ほんとうに素人丸出しで申し訳ございません…

419 名前:デフォルトの名無しさん [2018/09/26(水) 16:42:22.74 ID:JgSk1Rg0.net]
VBAの勉強をしようと思うのですが、まず何から始めればいいですか?教えてください。

420 名前:デフォルトの名無しさん mailto:sage [2018/09/26(水) 17:05:59.73 ID:cCj/GZBP.net]
まず服を脱ぎます。

421 名前:デフォルトの名無しさん mailto:sage [2018/09/26(水) 18:16:51.93 ID:Dt06YZ+t.net]
>>402
まずやりたい事を考えるといい。

最初は既存の関数の真似するプログラムでも書いて基本的な書き方を覚えるとかオススメ。
関数使えばチェックできるし。

慣れてきたら、百ます計算を作るでもいいし、ナンプレを作るでもいい。日常的にエクセルでやってる操作があるなら自動化してみるでもいい。

そのために必要なことはググれば全部出てくる。

422 名前:デフォルトの名無しさん mailto:sage [2018/09/26(水) 18:45:15.00 ID:OGb2Ur6B.net]
以下二点留意すればあとはググりながら独学で大丈夫かと思います

・普通に日英両方でググっても出てこなかったら他のモダンな言語の出番だと察する癖をつける
・bufとかSub Sample1()とかobjFsoといった特徴的な表記をサンプルコードで多用しているサイトは悪いコードの見本市なので極力真似ないように今から気を付ける

423 名前:デフォルトの名無しさん [2018/09/26(水) 19:12:00.05 ID:+un+mAjX.net]
そしておもむろに肛門にこびりついトレペかすを掃除します。

424 名前:デフォルトの名無しさん mailto:sage [2018/09/26(水) 19:12:58.42 ID:SfBrsqof.net]
>>401
12cならOracle.ManagedDataAccessがオススメ

425 名前:デフォルトの名無しさん [2018/09/26(水) 21:33:09.71 ID:JgSk1Rg0.net]
>>404
いきなり参考書から始めないほうがいいってネットに書いてありましたけど、本当ですか?

426 名前:デフォルトの名無しさん [2018/09/26(水) 22:45:53.91 ID:+un+mAjX.net]
ネットに書いてある事を素人が真似ると最悪直腸が破裂する危険もあります。
初心者が浣腸プレイに挑戦する時は必ず上級者に直接教えてもらうようにしまちょう。



427 名前:デフォルトの名無しさん mailto:sage [2018/09/26(水) 23:16:47.85 ID:4uP8tILz.net]
>>409
それ、面白いと思って書いたの?

428 名前:デフォルトの名無しさん [2018/09/26(水) 23:17:53.84 ID:+un+mAjX.net]
>>410
面白いと思ったの?w

429 名前:デフォルトの名無しさん mailto:sage [2018/09/26(水) 23:33:31.70 ID:4uP8tILz.net]
>>411
いや、微塵も
笑わせるつもりがないのなら何で書いたのかなと思って

430 名前:デフォルトの名無しさん [2018/09/26(水) 23:35:48.77 ID:+un+mAjX.net]
>>412
じゃなんで面白いと思ったの?って書いたの?w

431 名前:デフォルトの名無しさん mailto:sage [2018/09/26(水) 23:48:40.23 ID:4uP8tILz.net]
>>413
滑ってるようにしか見えなかったから

432 名前:デフォルトの名無しさん [2018/09/27(木) 08:01:55.54 ID:99b9Jx0M.net]
>>414
結局おまえが盛大にスベっとるやんw恥をしれw

433 名前:デフォルトの名無しさん mailto:sage [2018/09/27(木) 08:16:20.10 ID:zQmuEMQe.net]
>>408
画面で一行ごとの動きを見ながら勉強した方が解説読むより理解しやすい。タイピングする時間も解説を読む時間も無駄。

434 名前:デフォルトの名無しさん mailto:sage [2018/09/27(木) 12:17:06.67 ID:UAsp+BRN.net]
>>402
まず入門書かって読めばいいんじゃね

435 名前:デフォルトの名無しさん mailto:sage [2018/09/27(木) 12:26:33.91 ID:UAsp+BRN.net]
勉強のやり方をを勉強しないと勉強できないとか

436 名前:デフォルトの名無しさん [2018/09/27(木) 21:40:20.96 ID:hL85+V3Z.net]
https://i.imgur.com/69DoZWN.jpg

どうしても必要で困っています

どなたか詳しい方がいらっしゃったら作成をお願いします。



437 名前:デフォルトの名無しさん mailto:sage [2018/09/27(木) 21:48:20.24 ID:qqpzpvHf.net]
>>419
SUMIFSで出来ると思うよ。
VBA使うにしてもSUMIFSを使うのが効率の良いやり方だと思う。

438 名前:デフォルトの名無しさん mailto:sage [2018/09/27(木) 21:54:42.81 ID:MgIWwOWH.net]
>>419
サンプルデータあげてくれれば作るよ
そのファイルの上から30行くれ

まぁやることは
JAN & 有効期限 & ロット番号の作業列作ってピボットに突っ込むだけだけどな

439 名前:デフォルトの名無しさん [2018/09/27(木) 21:55:15.47 ID:hL85+V3Z.net]
>>420
ありがとうございます。
ググってその関数を見つけたのですが、どう記述したら実現出来るのかが分からなくて…

440 名前:デフォルトの名無しさん [2018/09/27(木) 21:56:35.93 ID:hL85+V3Z.net]
>>421

サンプルデータってどこにどうやってアップロードすればいいですか??

441 名前:デフォルトの名無しさん [2018/09/27(木) 22:10:56.58 ID:pq96CSzd.net]
普通にデータソースをそのブックのシートにして
SQL書けばきっと簡単にできる

VBAなんか不要

442 名前:デフォルトの名無しさん mailto:sage [2018/09/27(木) 22:19:36.54 ID:MgIWwOWH.net]
>>423
fast-uploader.com/
「ファイルを選択」
「アップロード開始」

これが出来ないなら流石に何もしない

443 名前:デフォルトの名無しさん [2018/09/27(木) 22:21:31.13 ID:hL85+V3Z.net]
>>425

fast-uploader.com/file/7093610017708/

444 名前:デフォルトの名無しさん [2018/09/27(木) 22:22:48.42 ID:hL85+V3Z.net]
>>425

ありがとうございます。
426のコメントでアップロードしています。
ご確認ください(^-^)

445 名前:デフォルトの名無しさん [2018/09/27(木) 22:30:26.82 ID:pq96CSzd.net]
https://i.imgur.com/g0LaQIP.png
sheet1

https://i.imgur.com/CswmAtc.png
sheet2
※ sheet2にsheet1の結果を抽出

↓この抽出結果
SELECT min(`Sheet1$`.aho) , sum(`Sheet1$`.baka) , min(`Sheet1$`.じゃま)
FROM `himistu\baka.xlsx`.`Sheet1$` `Sheet1$`
group by `Sheet1$`.aho

446 名前:デフォルトの名無しさん [2018/09/27(木) 22:48:24.69 ID:pq96CSzd.net]
fast-uploader.com/file/7093611609249/
完成



447 名前:デフォルトの名無しさん mailto:sage [2018/09/27(木) 22:54:14.35 ID:MgIWwOWH.net]
>>429
間違ってない?
ユーロジンが一つになっている

448 名前:デフォルトの名無しさん [2018/09/27(木) 23:00:45.54 ID:hL85+V3Z.net]
>>429
早速の作成ありがとうございます。

私の伝え方が不十分だったかも知れませんが、430のコメントの通りです。

お時間があれば修正していただけると助かります。

449 名前:デフォルトの名無しさん [2018/09/27(木) 23:03:47.01 ID:pq96CSzd.net]
fast-uploader.com/file/7093612560800/
よしなおした

450 名前:デフォルトの名無しさん [2018/09/27(木) 23:06:15.22 ID:hL85+V3Z.net]
>>432
ありがとうございます。
ちなみに、新たにデータを作成するのですが、そのデータに対して処理するにはどのようにすればよいですか??

451 名前:デフォルトの名無しさん mailto:sage [2018/09/27(木) 23:09:53.34 ID:MgIWwOWH.net]
あら負けた
fast-uploader.com/file/7093612906901/

ピボットで表みたいにするやり方がわからんかったわ

452 名前:デフォルトの名無しさん [2018/09/27(木) 23:14:28.37 ID:pq96CSzd.net]
↓セパゾン錠2を100個追加
https://i.imgur.com/PgDS

453 名前:jOe.png

↓[データ]タブ→[すべて更新]押下
https://i.imgur.com/mSvw0XM.png
セパゾン錠2が155個になってる

カンペキ
[]
[ここ壊れてます]

454 名前:デフォルトの名無しさん mailto:sage [2018/09/27(木) 23:23:57.47 ID:MgIWwOWH.net]
>>423
この集計、どうやって作ったか教えて下さい!
テーブル作る所までしかわかりませんでした

455 名前:デフォルトの名無しさん [2018/09/27(木) 23:43:17.54 ID:pq96CSzd.net]
新規に作成したい場合

[データ]タブ → [その他のデータソース] → [Microsoft Query]
 ↓
Excel Files
 ↓
このファイル
 ↓
Sheet1$ > → 次へ → 次へ → 次へ → 。。。クエリの編集を行う → 完了
 ↓
SQL
 ↓

SELECT `Sheet1$`.YJコード, Sum(`Sheet1$`.前月末在庫数), Min(`Sheet1$`.前月末評価単価), Min(`Sheet1$`.薬品名), Min(`Sheet1$`.単位名), Min(`Sheet1$`.薬価), Min(`Sheet1$`.通常仕入れ先コード),
Min(`Sheet1$`.発注点), Min(`Sheet1$`.JANコード), Min(`Sheet1$`.棚番1), Min(`Sheet1$`.棚番2), Min(`Sheet1$`.枝番), Min(`Sheet1$`.包装名称), `Sheet1$`.有効期限, `Sheet1$`.ロット番号
FROM `ひみつ\サンプルデータ.xlsx`.`Sheet1$` `Sheet1$`
GROUP BY `Sheet1$`.YJコード, `Sheet1$`.有効期限, `Sheet1$`.ロット番号

 ↓

[ファイル] → Microsoft Office Excelにデータを返す

コレでイケル
一件落着

456 名前:デフォルトの名無しさん mailto:sage [2018/09/27(木) 23:56:33.07 ID:MgIWwOWH.net]
>>437
ありがとー!



457 名前:デフォルトの名無しさん mailto:sage [2018/09/27(木) 23:57:51.93 ID:MgIWwOWH.net]
エクセルって自分自身をソースにしてSQL発行なんてできたのか・・・
凄すぎて泣けてきた。もっと早く知りたかったな

458 名前:デフォルトの名無しさん [2018/09/28(金) 00:15:50.74 ID:h9+2U6ZR.net]
>>437
作成を依頼したものです。
まだ詳しく確認できていませんが、色々とスピーディーに対応していただきありがとうございます。

459 名前:デフォルトの名無しさん mailto:sage [2018/09/28(金) 04:54:48.92 ID:7Dx3JKmZ.net]
よくこんな馬鹿を相手にするな

460 名前:デフォルトの名無しさん mailto:sage [2018/09/28(金) 07:18:03.33 ID:3N0zeARs.net]
以上、無能の自己紹介でした

461 名前:デフォルトの名無しさん [2018/09/28(金) 09:03:04.35 ID:zkBwEOAZ.net]
なんちゃってマップはどうなった

462 名前:デフォルトの名無しさん mailto:sage [2018/09/28(金) 18:29:54.42 ID:AnMtzl3w.net]
>>442
悔しいか、屑

463 名前:デフォルトの名無しさん mailto:sage [2018/09/28(金) 19:43:53.67 ID:3N0zeARs.net]
>>444
おっ!
天才様の登場だ〜〜〜www

464 名前:デフォルトの名無しさん [2018/09/28(金) 21:17:46.20 ID:k5h2WtG4.net]
やっぱりな
この板で役に立つレスは
オレしかしてない

465 名前:デフォルトの名無しさん mailto:sage [2018/09/28(金) 21:26:48.63 ID:mtesGZvP.net]
天才様ドーナツ作って

466 名前:デフォルトの名無しさん mailto:sage [2018/09/28(金) 23:16:32.45 ID:AJk9wJBe.net]
>>446
でもお前、VBAしか出来ないじゃん



467 名前:デフォルトの名無しさん [2018/09/29(土) 16:35:28.06 ID:V4hAUMop.net]
>>432
Excel2010じゃ動かないんですかね

468 名前:デフォルトの名無しさん [2018/09/29(土) 17:27:14.21 ID:IuTgmxg/.net]
1. サンプルデータ.xlsxをダウソ(>>426
2. aho.dqyをダウソ(fast-uploader.com/file/7093764952195/
3. aho.dqyをテキストエディタで開く
4. aho.dqyの【ひみつ】をサンプルデータ.xlsxがあるディレクトリフルパスに置換
5. aho.dqyをダブルクリック

コレでイケル
バカでもチョンでもイケル

>>432はExcel2010がダメなワケじゃない
知能が著しく低いヤツには動くようにはできない

469 名前:デフォルトの名無しさん mailto:sage [2018/09/29(土) 20:04:17.86 ID:m1u3SrFL.net]
だが気をつけて欲しい
Jet 4.0 は64bit版には対応していない

470 名前:デフォルトの名無しさん mailto:sage [2018/09/29(土) 20:04:56.48 ID:UGjn5ihf.net]
久々に覗いたらなんじゃこりゃ・・・質問した人、理解できてるのか? これ。
まぁ理解できるならSQLでもいいだろうけどさ。

>>440
開業医んとこか薬局んとこか分からないけど・・・まぁその、お疲れ様。
とりあえず分からないようなら他の解決策もあるのでその旨言ってね。

471 名前:デフォルトの名無しさん mailto:sage [2018/09/29(土) 20:12:30.98 ID:UGjn5ihf.net]
>>440
ついでに。

>元の在庫管理データっぽいの


472 名前:白lであった方が良い部分が文字列として入力されてる。問題なければそのままで良いけど。
それより、有効期限とロットNo.が空欄の薬剤があるけど大丈夫? たぶんデータの取り出し方の問題か何かだと思うけど。

>SQL
作ってくれた人には申し訳ないけど、JANコードじゃなくてYJコードで集計しちゃってるので一応注意。
まぁどっちでも大して変わらないんだけど。
[]
[ここ壊れてます]

473 名前:デフォルトの名無しさん [2018/09/29(土) 23:48:20.58 ID:IuTgmxg/.net]
aho.dqyの抽出問合せを修正すれば(@〜Bの箇所を修正)すぐに修正できる

(修正前)

SELECT aho.YJコード, @
  Sum(aho.前月末在庫数),
  Min(aho.前月末評価単価),
  Min(aho.薬品名),
  Min(aho.単位名),
  Min(aho.薬価),
  Min(aho.通常仕入れ先コード),
  Min(aho.発注点),
  Min(aho.JANコード), A
  Min(aho.棚番1),
  Min(aho.棚番2),
  Min(aho.枝番),
  Min(aho.包装名称),
  aho.有効期限,
  aho.ロット番号
FROM
  `【ひみつ】\サンプルデータ.xlsx`.`Sheet1$` aho
GROUP BY
  aho.YJコード, B
  aho.有効期限,
  aho.ロット番号

474 名前:デフォルトの名無しさん [2018/09/29(土) 23:50:30.45 ID:IuTgmxg/.net]
 
(修正後)

SELECT Min(aho.YJコード), @
  Sum(aho.前月末在庫数),
  Min(aho.前月末評価単価),
  Min(aho.薬品名),
  Min(aho.単位名),
  Min(aho.薬価),
  Min(aho.通常仕入れ先コード),
  Min(aho.発注点),
  aho.JANコード, A
  Min(aho.棚番1),
  Min(aho.棚番2),
  Min(aho.枝番),
  Min(aho.包装名称),
  aho.有効期限,
  aho.ロット番号
FROM
  `【ひみつ】\サンプルデータ.xlsx`.`Sheet1$` aho
GROUP BY
  aho.JANコード, B
  aho.有効期限,
  aho.ロット番号


この修正で、どう集計されてるか理解できるハズ

475 名前:デフォルトの名無しさん mailto:sage [2018/09/30(日) 00:00:43.46 ID:TbDeVj+o.net]
自分には理解できていても質問者が理解できているかは別

476 名前:デフォルトの名無しさん mailto:sage [2018/09/30(日) 00:03:38.45 ID:ItvcYfS7.net]
>452
内容的にドラッグストアだと思う
ってか俺がドラッグストア勤務



477 名前:デフォルトの名無しさん mailto:sage [2018/09/30(日) 14:48:48.37 ID:I0OjYnSY.net]
>>451
Jetの後継でACE.OLEDBってのがある
64ビット版もある

問題は、32ビット版と64ビット版の共存ができないが

478 名前:デフォルトの名無しさん mailto:sage [2018/09/30(日) 17:57:31.99 ID:3+iEwgWt.net]
作成依頼のVBAです。どなたかお願いします。
フィルタオプションを使ったVBAなのですが、上手い方法がないものか・・。

用意するシート
「総合商品情報」、「抽出条件」、「denpyou」「date」「tantou」「kata」「kazu」の7つを用意

総合商品情報のA1に「伝票No.」、B1に「日付」、C1に「担当」、D1に「型番」、E1に「数量」と記載され、
そして各項の2行目以降にデータが延々と羅列されている。

そこから特定の条件の情報を抽出したい。
条件はシート「抽出条件」にある。
シート「抽出条件」のA1〜E1は各項目の名前があり、
A2〜E2の条件で抽出したい。

A1=「伝票No.」 A2=「1001」
B1=「日付」 B2=「2018/1/1」
C1=「担当」 C2=「山田」
D1=「型番」 D2=「A-001」
E1=「数量」 E2=「1」

抽出条件が伝票No.「1001」で抽出したデータはシート「denpyou」のA1に抽出
日付「2018/1/1」で抽出したデータはシート「date」のA1に抽出
担当「山田」で抽出したデータはシート「tantou」のA1に抽出
型番「A-001」で抽出したデータはシート「kata」のA1に抽出
数量「1」で抽出したデータはシート「kazu」のA1に抽出する。

ただし、抽出条件に記載があっても、総合商品情報には記載がない場合もある。
(※例えば、抽出条件「山田」が総合商品情報のC列にはないとか)
その場合はエラーを無視して、他のシートの抽出を実行して欲しい。

※分かりにくい説明かもしれませんが、よろしくお願いします。

479 名前:デフォルトの名無しさん mailto:sage [2018/09/30(日) 18:03:15.18 ID:FLQTI8+6.net]
SQL発行すれば何とかなると思う

480 名前:デフォルトの名無しさん mailto:sage [2018/09/30(日) 18:16:07.23 ID:hh5CI8rl.net]
VBAなんか使わなくても普通にVLOOKUPで一瞬でできるな

481 名前:デフォルトの名無しさん mailto:sage [2018/09/30(日) 23:25:01.00 ID:BlMeh26g.net]
それ、作ってもらったとして、自分でメンテできます?

482 名前:デフォルトの名無しさん mailto:sage [2018/09/30(日) 23:39:46.62 ID:ItvcYfS7.net]
vlookupと作業列でいいんじゃねって思ってしまう

483 名前:デフォルトの名無しさん [2018/09/30(日) 23:40:53.09 ID:aYXyCrkn.net]
ああ
オレなら余裕でサクッとできるわあ

キミラ低能にコレできる?

VLOOKUPでは行は1行しかとれない
少なくともコレではできない

484 名前:デフォルトの名無しさん mailto:sage [2018/09/30(日) 23:47:05.68 ID:ItvcYfS7.net]
>>459
fast-uploader.com/file/7093874344745/
こんな

485 名前:漢字でしょ
テキトーに作ったけど多分もんだいはないと思う
[]
[ここ壊れてます]

486 名前:デフォルトの名無しさん mailto:sage [2018/09/30(日) 23:49:34.63 ID:ItvcYfS7.net]
>>464
自己紹介好きだねぇ
君はエクセル覚えたての中学生かなんかだと思うけど、もう少し頑張れ

これぐらいなら見た瞬間に完成図が思い浮かぶよ
vbaにするまでも無い



487 名前:デフォルトの名無しさん [2018/09/30(日) 23:56:56.43 ID:aYXyCrkn.net]
でた、vbaしかできない低学歴知恵遅れITドカタふがいきってる

488 名前:デフォルトの名無しさん [2018/10/01(月) 00:00:41.84 ID:zfKNS/F/.net]
で、低学歴知恵遅れは
どこにVLOOKUP使ったの?

ん? いってみ?






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<289KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef