22/05/30 11:31:07 pTyzyEGo0.net
ユーザーフォーム上のボタンをクリックすると、
Private Sub CommandButton1_Click()
End Sub
のように挿入されますが、この挿入位置には法則性はありますか?
333:デフォルトの名無しさん (ワッチョイ 2bda-PinD)
22/05/30 12:13:30 OyYzutpm0.net
じゃあ今度からこのスレのみんなの事を禿って呼んでええか?
334:デフォルトの名無しさん (ワッチョイ 09ce-yO3c)
22/05/30 12:20:22 wDXjGZuh0.net
俺はExcel全然できないんだけど
335:デフォルトの名無しさん (ワッチョイ 9917-rAsz)
22/05/30 12:20:41 Yd1KWPfN0.net
毎回豊田真由子口調で言うなら許す
336:デフォルトの名無しさん
22/05/30 13:30:00.03 0Z9/8mJh0.net
>>328
自分で試すことってできませんか?
337:デフォルトの名無しさん
22/05/30 14:03:07.86 OgQlhvU6M.net
この、は♥げ♥
338:デフォルトの名無しさん
22/05/30 14:03:43.38 OgQlhvU6M.net
>>328
あります
339:デフォルトの名無しさん
22/05/30 16:13:01.26 ytFfApAu0.net
STAP細胞はありますか?
340:デフォルトの名無しさん
22/05/30 16:27:46.26 Z6OL71NLa.net
>>330
URLリンク(www.youtube.com)
341:デフォルトの名無しさん (ワッチョイ 93ad-zgJ4)
22/05/30 19:45:13 pTyzyEGo0.net
何か変な奴が増えたな。
前はまともな回答が得られたんだけど。
無職か
342:デフォルトの名無しさん
22/05/30 22:28:34.36 U5Ze+/Ia0.net
このハゲー
343:デフォルトの名無しさん
22/05/31 05:25:49.12 qZPc3K6R0.net
この禿げぇぇぇ!!
344:デフォルトの名無しさん
22/05/31 12:16:40.12 e8W8kp4L0.net
剃ってますが、何か?
345:デフォルトの名無しさん
22/05/31 15:23:45.24 qZPc3K6R0.net
ツルッツル!
346:デフォルトの名無しさん
22/05/31 17:25:59.49 1k2p4OCO0.net
頭が守られなくなるから剃らない方がいいのに
347:デフォルトの名無しさん
22/05/31 23:09:32.48 rnWQ7LEg0.net
サマータイムめんどくせぇな…
今サマータイムかどうか表示したいんだけど誰か式作って笑
VBAでも数式でもどっちでもOK
348:デフォルトの名無しさん
22/05/31 23:14:34.97 0qvYGG5m0.net
サマータイムは国によって違うし年によっても違う
あと自分で作らなくてもあるからぐぐれ
349:デフォルトの名無しさん
22/06/01 10:31:55.12 LqJbFkjG0.net
ググるでググれ
何回言われたか
350:デフォルトの名無しさん
22/06/01 18:42:16.08 4MDL/f8zd.net
2022年のサマータイムはいつから? 【開始】2022年3月27日(日)午前1時 → 午前2時へ1時間進める【終了】2022年10月30日(日)午前2時 → 午後1時へ1時間戻す(遅らせる)※スイスはUT1の国なので、上記時間にプラス1時間足した時間を基準とする。
ぐぐったらこれがでてきたからこれで計算すればいいのでは
351:デフォルトの名無しさん
22/06/02 01:00:25.06 ww3inSB20.net
VBAでやる意味がわからん
352:デフォルトの名無しさん
22/06/02 11:08:01.45 MPFVtYTLa.net
>>342
+1
いろんなものにぶつけやすいよなωωωωωωωωω
353:デフォルトの名無しさん (ワッチョイ 992f-SJsm)
22/06/02 13:37:12 wjg1CkCV0.net
会社ではVBAしか使わしてくれんのじゃ。
アルツハイマーでもこれくらい分かる。
354:デフォルトの名無しさん
22/06/03 01:37:10.45 d1WjLs5X0.net
時刻の書かれたセルの編集するのか?
355:デフォルトの名無しさん (スップ Sdb3-95+F)
22/06/03 02:52:19 mOQ1024Gd.net
>>350
その程度の発想しか出来ない人は書き込みしなければいいのに
356:デフォルトの名無しさん
22/06/03 05:47:43.61 d1WjLs5X0.net
>>351
自力でサマータイム求められない奴に言えよ
357:デフォルトの名無しさん
22/06/03 07:19:45.45 XQuJ+afhD.net
>>352
このスレの多くの人が当てはまってしまう
358:デフォルトの名無しさん (ブーイモ MMab-yO3c)
22/06/03 11:29:40 pHjmbkhpM.net
夏が来れば思い出す
359:デフォルトの名無しさん
22/06/03 15:31:03.54 726WZH160.net
サマーソルトキック
360:デフォルトの名無しさん
22/06/04 05:59:25.84 nF/95LMud.net
海外ネトゲでサマータイムに苦しめられてるから
VBAじゃないけどC#でちっこいの作ったわ
361:デフォルトの名無しさん
22/06/04 06:14:22.15 nF/95LMud.net
Application.OnTime 使えば、一分ごとに表示変えるとかできるね
あとは面倒だけどサマータイムに入る日時と出る日時計算する関数作って・・と
362:デフォルトの名無しさん
22/06/04 07:08:46.25 wpuL0IDQD.net
サマータイムこれから実装なんて何回車輪の再発明するつもりだろう
363:デフォルトの名無しさん
22/06/04 14:35:11.71 2NGB/tgF0.net
>>356
やってることruby厨と一緒だな
364:デフォルトの名無しさん (ワッチョイ 1a3d-Xy6N)
22/06/04 15:02:27 a2v34LYj0.net
VBAで自分自身のファイル名を持ってくる場合て、
エクセルVBAなら
Debug.Print ThisWorkbook.Name
パワポVBAなら
Debug.Print ActivePresentation.Name
だけど、
そもそも自分がエクセルなのかパワポなのかを判断することてできる。ActiveDocument
365:デフォルトの名無しさん
22/06/04 16:08:31.18 a2v34LYj0.net
Excelとワードで同じVBAを流してみたんですが、挙動が異なる。
これってバグ?
URLリンク(i.imgur.com)
office2013です。
Set myDocument = ActiveDocument
'Set myDocument = ActiveSheet
x = 110: y = 10: r = 100: h = 100
a = 0.3
Set shp = myDocument.Shapes.AddShape(msoShapeArc, x, y + r * (1 - a), r, r * a)
With shp
.Adjustments.Item(1) = -180
.Adjustments.Item(2) = 180
.Line.DashStyle = msoLineDash
.Line.Weight = 2
End With
Set shp = myDocument.Shapes.AddShape(msoShapeArc, x, y, r, r)
With shp
.Adjustments.Item(1) = -180
.Adjustments.Item(2) = 180
.Line.DashStyle = msoLineSolid
.Line.Weight = 2
End With
366:デフォルトの名無しさん
22/06/04 16:13:58.10 tUjUVaiz0.net
>>361
単に円の中心をどこにおいて描画するかって違いでしょ
仕様としか
367:デフォルトの名無しさん
22/06/04 18:56:04.34 a2v34LYj0.net
>>362
確かに違う。
でも、なぜWordとExcelで仕様を変える必要がある?
どっかに明記してあったけ?
368:デフォルトの名無しさん
22/06/04 19:07:16.56 tUjUVaiz0.net
>>363
考え方が逆
エクセルとワードのオブジェクトが全然別物なのに、vbaのコードが似てる事が奇跡なんだよ
俺からすれば、よくぞ無修正で動いてるなってのが素直な感想。結果が同じなんて微塵も期待しない
エクセルvbaをワードvbaに移植しようなんてそもそも思わない
369:デフォルトの名無しさん
22/06/04 21:44:29.71 a2v34LYj0.net
>>360
自己解決した。
Application.Caption
でなんとなくわかる
370:デフォルトの名無しさん
22/06/04 22:59:19.25 6tY8trDcd.net
>>365
馬鹿は日記を書くな
Application.Versionだろうが
371:デフォルトの名無しさん
22/06/05 00:15:07.27 LBKd1m9qd.net
ファイル名がわかってるんなら拡張子を見れば?
372:デフォルトの名無しさん
22/06/05 05:39:30.94 exW/DWN40.net
どっちも極端
Objectが別物だって理解していれば
使い回しが効く部分は使いまわせる
EXCEL VBAの使える部分をACCESSで使ったり
VBSの挙動確認のためにEXCELのVBAに
落とし込むなんてザラにあること。
373:デフォルトの名無しさん
22/06/05 06:24:20.21 VDGjTDhq0.net
>>366
バカはお前だろ。
Application.Versionで何が区別がつく。
全部同じ値だ。
374:デフォルトの名無しさん
22/06/05 07:45:08.95 vTlNlLry0.net
バカって言う方がバカなんですーの典型的な例
375:デフォルトの名無しさん
22/06/05 09:11:03.70 VKHbv3il0.net
ハゲって言う方がハゲなんですーもよく当てはまる例
376:デフォルトの名無しさん
22/06/05 09:42:13.57 GrqOyp5w0.net
いいから仲良くしろください
377:デフォルトの名無しさん
22/06/05 10:32:25.90 5rczsPhbD.net
セルの書式を配列に保存しておきたい場合、
Rangeオブジェクトの配列を使わなきゃダメですか
378:デフォルトの名無しさん
22/06/05 10:55:59.24 vTlNlLry0.net
設定の情報を文字列化すればstring型でもいけるんじゃないかな?
保存したい情報が複数あるならカンマで結合してsplitで取り出せば良いだけだし
379:デフォルトの名無しさん
22/06/05 11:47:56.31 eL6jNkf4d.net
表示形式と背景色なら文字列にできるけど、書式って文字列に変換可能か?
罫線って文字列で取れたっけ
380:デフォルトの名無しさん
22/06/05 13:43:06.66 vTlNlLry0.net
罫線の有無をTrue/Falseで判定すればいけない?
381:デフォルトの名無しさん
22/06/05 14:12:04.89 MGWqyCtZ0.net
>>375
> 罫線って文字列で取れたっけ
数値(列挙値)で取れるんだからテキトーに文字列化すればいいやん
>>376
太さ、線種(鎖線とか)や色もあるから
382:デフォルトの名無しさん
22/06/05 14:15:50.06 x/GFG4oyM.net
罫線はRangeオブジェクト(のプロパティ)ではなくてBorderオブジェクト
383:デフォルトの名無しさん
22/06/05 15:54:50.02 udiiYXiVa.net
// n = 1, 2, 3 or 4
b = sheet.Cells(r, c).Borders(n)
b.Weight 代入&参照
b.LineStyle 代入&参照
384:デフォルトの名無しさん
22/06/05 16:38:39.08 MGWqyCtZ0.net
>>379
斜め線もあるしそもそもXlBordersIndexは1〜4じゃないぞ
URLリンク(docs.microsoft.com)
385:デフォルトの名無しさん
22/06/05 20:07:10.90 dqA2RGZhd.net
結局Rangeで格納した方が早いわな
配列が嫌ならコレクションとかでも行けるけど
386:デフォルトの名無しさん
22/06/05 20:27:14.52 GrqOyp5w0.net
書式を保存するシートを別に作っておいたほうが楽じゃない?
387:デフォルトの名無しさん (ワッチョイ 86da-fOeb)
22/06/05 23:49:37 YrlocrIV0.net
禿達ってなんですぐ喧嘩になるの?
お互い譲り合えば良いじゃん。
388:デフォルトの名無しさん (ワッチョイ 892f-M86+)
22/06/06 00:12:23 RB7fKeqq0.net
おたがいハゲましあっていますよ
389:デフォルトの名無しさん (スップ Sdea-jate)
22/06/06 00:18:34 fgz41eYud.net
>>383
みるみる毛が減るようになればわかるよ
390:デフォルトの名無しさん
22/06/06 01:40:02.35 CD+x4MGM0.net
禿鷹のくせに
391:デフォルトの名無しさん
22/06/06 01:45:08.65 LVkl0QQt0.net
そこをなんとか、Excelでwebview2を使うことは出来ませんか?
392:デフォルトの名無しさん
22/06/06 03:13:52.17 fgz41eYud.net
>>386
馬鹿にするな!うっすらとまだ残っているわ!
393:デフォルトの名無しさん
22/06/06 05:44:12.69 RB7fKeqq0.net
>>388
このハゲ!
394:デフォルトの名無しさん
22/06/06 10:06:09.33 JILrjNOSM.net
>>387
無理、素直に.net使え
395:デフォルトの名無しさん
22/06/06 13:21:31.23 4DEc3eXi0.net
>>383
> お互い譲り合えば良いじゃん。
「ネコと和解せよ」
URLリンク(youtu.be)
(逆再生という指摘もあるが・・・)
396:デフォルトの名無しさん
22/06/07 22:41:43.65 mgVGi2C30.net
'Word,Excel,Powerpointどれでも動くようにする
Select Case True
Case Application.Caption = "Word"
Set myDocument = ActiveDocument
Case InStr(Application.Caption, "Excel") > 0
Set myDocument = ActiveSheet
Case Else
Set myDocument = ActivePresentation.Slides(1)
End Select
'あとはmyDocument.なんとかで操作すればどれでも動く。
397:デフォルトの名無しさん
22/06/08 00:49:01.93 cIjXs1I0d.net
>>392
馬鹿の日記はお断り
398:デフォルトの名無しさん
22/06/08 00:54:12.05 jfy5wCdsM.net
ハゲの日記なら大丈夫?
399:デフォルトの名無しさん
22/06/08 00:55:55.27 cIjXs1I0d.net
今日は毛が341本抜けました
とか読みたい?
400:デフォルトの名無しさん
22/06/08 01:01:21.01 cIjXs1I0d.net
唐突ですが、30歳を過ぎて頭皮を去っていく髪の毛が増えてきました。
今までは粘着力の強いコロコロで定期的に取っていましたが、これが厄介で、頭からからは簡単に抜けるくせにカーペットからはなかなか離れようとしません。
また、いくら自分の髪とはいえ、毛の大群がまとわりついたコロコロを剥がすあの瞬間が最高に嫌いでした。
勿体無いかな…でも欲しいな…など思いつつダ〇ソンのハンディタイプを買おうと迷った事もありましたが、1/5のお値段で高評価のこちらの商品でとりあえず様子見することに。外箱が思っていたよりもかなり小さく、最初は失敗したかと思いましたが、開けてみると質感も良く、これなら部屋のどこに置いても邪魔にならなそうです。
そして肝心の吸引力ですが、あんなにコロコロで取れなかった脱走兵どもが綺麗に吸い込まれていくではありませんか!
ついでにいつぞやの晩酌の際に食べこぼしたクルミの欠片など、多少大きさのある物でも綺麗に吸い込んでくれます。もしかしたらダ〇ソンはもっと強力に吸ってくれるのかもしれませんが、私と同じような悩みをお持ちの方でしたら、これで十分でしょう。アタッチメントも布団用や狭いところ用のものもついていますので便利です。
もういっそ
401:、頭に直接この掃除機をかけた方が早いんじゃないかと思ってしまう程です。
402:デフォルトの名無しさん
22/06/08 02:36:31.18 3hgKnM3d0.net
ち○毛や脇の下まで薄くなった俺は??
403:デフォルトの名無しさん
22/06/08 07:20:52.11 fAskgOC50.net
ここはHGのあつまりでつね
404:デフォルトの名無しさん
22/06/08 08:24:09.17 0P23HUlSM.net
MGかPGが良いなぁ
405:デフォルトの名無しさん
22/06/08 09:48:44.91 pnJSpG8Od.net
はげもげぱげ
406:228
22/06/08 17:24:59.25 C2b/Gc96H.net
以前こちらでお世話になったものですが、うまくファイルに転記できないためまたお力をお借りしにきました。。
2つのブックがあって、別のブックにエリアごと(B列で判定)のデータをぺたぺた貼って保存すればOKなんですが
元データが10万行くらいあって、なぜかブックはエリアごとに保存は出来るのですが、あるはずの半分くらいのデータしかコピペできてないのです。
コピペで切り貼りしたコードで見づらいくて申し訳ありませんが、おかしいところがあれば教えていただけないでしょうか??(H列が最右の列でTOTALにあたります)
■データのイメージ 延々と下に10万行くらいあります。
A列 B列 C列 D列 TOTAL
業態合算 全国 その他 OTHERS オキナワモ モリナガヨ-ゴ P473ML 4960405664923 Distribution (PCW; Sales value) 0.01
業態合算 全国 その他 OTHERS オキナワモ モリナガヨ-ゴ P473ML 4960405664923 Market size (Value) 339,651.60
業態合算 全国 その他 OTHERS オキナワモ モリナガヨ-ゴ P473ML 4960405664923 Sales per store selling item (Unit) x1,000 5,744.20
業態合算 全国 その他 OTHERS オキナワモ モリナガヨ-ゴ P473ML 4960405664923 Sales per store selling item (Value) x1,000 573,148.54
業態合算 全国 その他 OTHERS オキナワモ モリナガヨ-ゴ P946ML 4960405664947 Distribution (PCW; Sales value) 0.05
業態合算 全国 その他 OTHERS オキナワモ モリナガヨ-ゴ P946ML 4960405664947 Market size (Value) 697,424.54
業態合算 全国 その他 OTHERS オキナワモ モリナガヨ-ゴ P946ML 4960405664947 Sales per store selling item (Unit) x1,000 6,850.74
業態合算 全国 その他 OTHERS オキナワモ モリナガヨ-ゴ P946ML 4960405664947 Sales per store selling item (Value) x1,000 871,208.64
業態合算 東海 大容量 PKS SOYBIO ソイビオトウニユウY プレ-ンムトウKP400 4589850822179 Distribution (PCW; Sales value) 41.70
業態合算 関東 大容量 PKS SOYBIO ソイビオトウニユウY プレ-ンムトウKP400 4589850822179 Market size (Value) 197,839,014.22
407:デフォルトの名無しさん
22/06/08 17:26:49.54 C2b/Gc96H.net
コードです 長いので分けます
Sub Export_ExcelFile()
'変数の定義
Dim Wb1 As Worksheet, Wb2 As Workbook, FileNam As String
Dim xPath As String
Dim key As String
Dim i As Integer
Dim Sh1 As Worksheet
Dim Sh2 As Worksheet
Application.ScreenUpdating = False
'ワークシートを指定する
Set Sh1 = ThisWorkbook.Worksheets("Sheet1")
'データの始まり2行目を指定
Dim start As Long
start = 2
Set Wb1 = ActiveSheet '元シートをActiveSheetにセットする
'出力先のパスを指定
With ActiveWorkbook
xPath = .Path & "\" 'ファイルが置いてあるフォルダからのパスを指定
End With
408:デフォルトの名無しさん
22/06/08 17:27:20.86 C2b/Gc96H.net
'エリアが空欄の位置までループ
Do While Sh1.Cells(start, 2) <> ""
Set Wb2 = Workbooks.Add ' 新規ブック作成
Set Sh2 = Wb2.Worksheets("Sheet1") '新規ブックのシートを指定
'ファイル名に付ける日付を取得
Dim strDate As String
strDate = DateSerial(Year(Now), Month(Now), Day(Now))
strDate = Format(strDate, "yyyymmdd")
'Excelファイル出力
FileNam = xPath & Sh1.Cells(start, 2).Value & "" & strDate & ".xlsx"
'コピー元の最初のエリア名を取得
key = Sh1.Cells(start, 2).Value
'同じエリア名が続く間はループ
Sh1.Activate
Do While Sh1.Cells(start, 2).Value = key
'データ行に色をつける
Cells(start, 7).Resize(1, 1).Interior.Color = RGB(255, 0, 0)
'Cells(i, 7).Resize(1, 1).Interior.Color = RGB(255, 0, 0)
i = i + 1 'コピー先の行を一つ下にずらす。
start = start + 1 'コピー元のエリア名行を一つ下にずらす。
Loop
409:デフォルトの名無しさん
22/06/08 17:27:41.62 C2b/Gc96H.net
Dim mySheet As Worksheet: Set mySheet = ActiveSheet
'赤く塗られた行をソートしてコピペする
Dim myRange As Range: Set myRange = mySheet.Range("A1").CurrentRegion
myRange.AutoFilter Field:=7, Criteria1:=RGB(255, 0 _
, 0), Operator:=xlFilterCellColor
myRange.SpecialCells(xlCellTypeVisible).Copy
Sh2.Activate
Range("A1").Select
ActiveSheet.Paste
Sh2.Range("G:G").Interior.Pattern = xlNone
mySheet.ShowAllData
Sh1.Range("G:G").Interior.Pattern = xlNone
'分割したファイルを保存して閉じる
Wb2.SaveAs Filename:=FileNam ' 同一フォルダに保存して閉じる
Wb2.Close
'分割ファイルのブックを解放
Set Wb2 = Nothing
Loop
Application.ScreenUpdating = True
MsgBox "終わったよ"
End Sub
410:デフォルトの名無しさん
22/06/08 17:31:00.27 C2b/Gc96H.net
元データを少なくして全部で50行くらいにしたら上手くファイルを分けて保存出来てたんですが、、、
もし問題点がお分かりになる方いらっしゃったらよろしくお願いしたいです(>_<)
411:デフォルトの名無しさん
22/06/08 18:24:26.53 38a4SNrC0.net
integerの最大っていくつまでだっけ?
412:デフォルトの名無しさん
22/06/08 18:40:07.58 lFvBESVva.net
2 ^ 15 - 1 = 32767 じゃね
413:デフォルトの名無しさん
22/06/08 18:40:44.71 mwMQbcQT0.net
ググれよ
414:デフォルトの名無しさん (ワッチョイ c1da-/lmG)
22/06/08 19:08:37 /v6Td7Qv0.net
>>396
面白いんですけど何で商品の話ですか
415:デフォルトの名無しさん (アウアウウー Sa11-fRoS)
22/06/08 19:25:08 2MMAQscUa.net
32bitのexcelと64bitのexcelでintの範囲違うんだろうか
(もちろんOSの話ではない)
416:デフォルトの名無しさん
22/06/08 19:34:40.24 38a4SNrC0.net
>i = i + 1 'コピー先の行を一つ下にずらす。
ってあるから貼り付け先が integer 超えたらだめじゃねって思った
417:デフォルトの名無しさん
22/06/08 19:43:22.59 60yE+Uw7d.net
Dim 残りの髪の毛 As byte
Dim 抜け毛 As LongLong
あとよろしく
↓
418:デフォルトの名無しさん
22/06/08 19:45:48.83 C2b/Gc96H.net
>>411
なるほど!どうりで最後まで貼られてなかったんだ(´;ω;`)早速ありがとうございます。
ちょっと自分でやり直してみます!!m(__)m
419:デフォルトの名無しさん
22/06/08 19:46:53.74 C2b/Gc96H.net
>>412
流れぶった切ってゴメンなさい
でも考えすぎてハゲそうな勢いでした。。頭悪くてイヤになります。。
420:デフォルトの名無しさん
22/06/08 20:12:39.32 C2b/Gc96H.net
ダメだ、integerをlongに替えてやってみたけど
やはり半分以下しか貼られませんでした。
もう少し頑張ってみます
421:デフォルトの名無しさん
22/06/08 20:25:07.29 C2b/Gc96H.net
自己解決しました。1つのエリアの塊が飛び飛びになってたので
同じエリアのブック内で上書きされてたみたいです。
でも皆さんのおかげで解決出来ました。ありがとうございました!
またハゲそうになったらこちらに伺いたいです。。懲りずによろしくお願いいたしますm(__)m
422:デフォルトの名無しさん
22/06/08 22:42:41.32 3hgKnM3d0.net
また毛
423:デフォルトの名無しさん
22/06/09 00:00:12.33 XIUzPNKLM.net
※よろず~ニュース
波平さん銅像に髪の毛戻る 引き抜かれてから5日の〝スピード植毛〟
URLリンク(yorozoonews.jp)
杉田 康人
URLリンク(public.potaufeu.asahi.com)
東京都世田谷区の桜新町商店街にある人気アニメ「サザエさん」一家の銅像から引き抜かれていた髪の毛が8日、復活した。同商店街によると3日朝、波平さんのトレードマークとなっている貴重な1本毛が抜かれているのが見つかった。ワカメちゃんの頭頂部から跳ね出した〝アホ毛〟3本もなくなっていたが、商店街の依頼を受けた業者が8日午後までに修復した。
サザエさん一家は、桜新町に住んでいる設定。作者の長谷川町子氏の美術館・記念館おひざ元の桜新町商店街は、作品ゆかりのストリートとして知られる。銅像は2012年(平成24)に建立したが、商店街の担当者によると波平さんはこれまでに6度、毛を引き抜かれる憂き目に遭っている。ワカメちゃんの髪が抜かれるのは初だという。
銅像の髪の毛は、針金にビニールをコーティングしたもの。(略)
※省略していますので全文はソース元を参照して下さい。
424:デフォルトの名無しさん (ブーイモ MM39-M86+)
22/06/09 04:46:01 CxlByAWLM.net
このハゲ
/ ̄ ̄ ̄ ̄ ̄ ̄\
/ \
/ ヽ
l:::::::::. |
|:::::::::: (●) (●) |
|::::::::::::::::: \___/ |
ヽ:::::::::::::::::::. \/ ノ
425:デフォルトの名無しさん
22/06/09 19:07:14.80 cD/wL2EQ0.net
いや
お前らハゲ散らかし過ぎだろ
426:デフォルトの名無しさん
22/06/09 21:45:50.80 WYCVR9XP0.net
>>420
そんなつもりは毛頭ございません
427:デフォルトの名無しさん
22/06/09 22:38:52.28 pASwhhxq0.net
パソコンばっかやっているから禿るんだわ
いい加減気がつけよ
428:デフォルトの名無しさん
22/06/09 22:48:34.88 /RbqsnKRd.net
禿げてる奴がパソコンばっかやるようになるんだわ
人生って残酷だよな
429:デフォルトの名無しさん
22/06/10 07:26:23.24 1o37Jrb90.net
もうしわ毛ありません
430:デフォルトの名無しさん
22/06/10 07:28:26.18 rEbuXRdM0.net
真面目に話すと、パソコン作業は頭使うしストレスの負荷が高いから禿やすいとは聞いた。
431:デフォルトの名無しさん (ワッチョイ 1abd-+jz7)
22/06/10 08:55:47 kCKMlptW0.net
人間関係の煩わしさでストレスの負荷が多い場合が多いから、パソコン作業はハゲにくいらしいよ
432:デフォルトの名無しさん
22/06/10 12:04:33.87 F7hdpVFcd.net
パソコンからは強い電磁波が出てるから、パソコン作業は禿げやすいとは聞いた。
433:デフォルトの名無しさん
22/06/10 12:51:05.36 zP3+9Ywoa.net
ハゲ対策の情報もいっぱい持ってるから予防できる
434:デフォルトの名無しさん
22/06/10 13:28:56.18 dcEjX7ueM.net
男性ホルモンの優位でハゲるから(*ノω・*)テヘ
435:デフォルトの名無しさん
22/06/10 13:52:15.99 6StqYoESd.net
パソコンの前でやる事と言ったらそれしか無いからな
436:デフォルトの名無しさん
22/06/10 18:44:17.05 rEbuXRdM0.net
男性ホルモンが盛んなのですから禿る
437:デフォルトの名無しさん
22/06/10 22:17:29.28 e4qm213id.net
このスレで質問するレベルの馬鹿が作ったExcel表のせいで葛飾区の保育所は大騒ぎ
438:デフォルトの名無しさん
22/06/10 22:31:48.31 lQlywAWy0.net
エクセル2016で複数のbook開いてると単体で開いてるときよりもずっとVBAの動作が遅くなるんだけど
解決策知ってる人いる?
439:デフォルトの名無しさん
22/06/10 22:34:53.56 /aCQrqDp0.net
複数開かなきゃいいんじゃね
440:デフォルトの名無しさん
22/06/10 23:02:11.31 yoZYMWv5H.net
>>432
(´;ω;`)
441:デフォルトの名無しさん
22/06/10 23:11:39.01 rEbuXRdM0.net
>>432
え?詳しく
ググっても詳細出てこない。
禿そうだわ
442:デフォルトの名無しさん (ワッチョイ 86da-fOeb)
22/06/10 23:14:29 rEbuXRdM0.net
あ、葛飾区のニュース出て来た
表計算ソフト式に誤りとか最低だろう。
テストしなかったのかな?
443:デフォルトの名無しさん (ブーイモ MM71-Rebr)
22/06/10 23:17:41 Vb4kLAL3M.net
>>436
検索初心者か?
普通にぐぐって一発で出るんだが
URLリンク(xtech.nikkei.com)
444:デフォルトの名無しさん (ワッチョイ 5d93-QMxd)
22/06/10 23:24:30 bPqrOIr80.net
どーせsubtotalじゃなくsumで小計出してたせいで合計が2重計上されたとかじゃねーの
445:デフォルトの名無しさん
22/06/11 00:03:58.02 peHZyvXnd.net
Dick A as strong
Dick B as strong
If A > B then
A = Tachi
B = Uke
End if
A => B
446:デフォルトの名無しさん
22/06/11 00:50:08.66 c8NiZZbH0.net
>>440
ツッコミどころ満載やな
447:デフォルトの名無しさん
22/06/11 09:42:09.94 k8BssVI/0.net
A もB も
強そうな型だなオイ
448:デフォルトの名無しさん
22/06/11 11:19:57.24 zJAfd1A70.net
ストロングチューハイはやばい酔い方する
449:デフォルトの名無しさん
22/06/11 12:41:06.40 CM4vZAaMM.net
A = Bだとどうなるの?
450:デフォルトの名無しさん
22/06/11 14:14:10.27 ZxVNHiJ20.net
なんで竿がデカい方が攻めなんだよ
はっ倒すぞ
451:デフォルトの名無しさん
22/06/11 14:27:57.92 8O7zsVZWM.net
どこにも竿の大きさなんて書いてない
クラス定義まで見ない限り、何を比較してるのか、このコードだけではわからない
さては思い込みでコードを書いてバグを発生させちゃうタイプだな?
452:デフォルトの名無しさん
22/06/11 15:03:55.80 zJAfd1A70.net
分かってないだけでしょ
453:デフォルトの名無しさん
22/06/11 16:08:12.40 ZxVNHiJ20.net
If Dick(竿)A>DickB Then A=タチって書いてあんじゃんか
454:デフォルトの名無しさん
22/06/11 16:33:22.04 k7wiIunZM.net
Strongは精力じゃね?
大きさならSizeとかLengthとか
455:デフォルトの名無しさん
22/06/11 18:37:34.42 4UGI/r2E0.net
禿は精力が強い
456:デフォルトの名無しさん
22/06/11 19:01:23.35 qcSYfg6i0.net
B = Not(A)
じゃね
457:デフォルトの名無しさん
22/06/11 20:12:32.64 VlCDkB2oM.net
DickクラスのSizeプロパティは読み取り専用
Electプロパティは代入可能
Cumメソッドは1日5回以上使うと例外発生
458:デフォルトの名無しさん
22/06/11 21:54:22.38 Ejve8RvI0.net
ShapeとTextBoxをマクロで作ったのを
別のBookのSheetにコピペした時のフォントは
マクロ側とコピペ側だとどちらに依存しますか?
459:デフォルトの名無しさん
22/06/11 22:02:30.68 TK5b+qDd0.net
聞く前にやったほうが早いだろw
460:デフォルトの名無しさん
22/06/11 22:04:32.17 XvS1eUBu0.net
質問失礼いたします。
ユーザー定義型に以下のようなツリー型になる感じの物をPublicで宣言してて
クラスモジュールにユーザー定義型の変数を作っているのですが、
プロパティの作り方で悩んでいます。
以下標準モジュール内
Public Type MinorItemType ' 小項目
minorItemName as String ' 小項目名
minorItemID as Long
End Type
Public Type MajorItemType ' 大項目
majorItemName as String ' 大項目名
majorItemID as Long
minorItem() as MinorItemType
End Type
以下クラスモジュール内
Dim majorItem_() as MajorItemType
この場合、以下のようにMajorItemType型のプロパティを作成して丸ごと渡すのか、
Public Property Get majorItem(ByVal num as Long) as MajorItemType
majorItem = majorItem_(num)
End Property
それともユーザー定義型の中の変数へのプロパティを1つずつ作成するのか、
どちらが正しいのでしょうか?
ちなみに作成するプロパティは原則Getのみで、
変数に値を取得するのは、クラス内に作成したSubプロシージャで
シートへ値を取りに行かせる具合です。
461:デフォルトの名無しさん (ワッチョイ ff42-kGh4)
22/06/11 22:38:15 kVPUfUKj0.net
正解はない
462:デフォルトの名無しさん
22/06/11 23:57:34.93 XvS1eUBu0.net
>>456
ありがとうございます。前者の方法で行ってみます。
463:デフォルトの名無しさん
22/06/12 00:52:49.29 SFQsQSvz0.net
戦車の砲塔で行ってみてやりにくかったら変えればいいんじゃね
464:デフォルトの名無しさん
22/06/12 01:40:55.69 QoN69QoAd.net
芋芋亀してみます!
465:デフォルトの名無しさん
22/06/12 18:48:33.62 cJxXuNHT0.net
文字列の一部分に0付き右詰めの数字を入れたいのだが・・・・
a = "000000000"
b = a
Mid(a, 2, 5) = 123
Debug.Print "変更前" & b
Debug.Print "変更後" & a
結果
変更前000000000
変更後012300000
これだと左詰めなんだが、こうなるべきじゃないの?
変更後0123 000
midにRightをかぶせてみたんだが、
Right(Mid(a, 2, 5), 3) = 123
オブジェクトが必要て言われる。
どうすればいいの?
466:デフォルトの名無しさん
22/06/12 19:03:38.39 M5mGZ9TuM.net
format(123, "000000000")じゃ駄目なの?
467:デフォルトの名無しさん
22/06/12 19:09:33.96 DaJUN4Jhd.net
Mid(a, 2, 5) = 123
の右辺を数字のままにしてるからおかしくなると思うので
CStr(123)みたいに文字列にしてからセットすればいいんじゃ
468:デフォルトの名無しさん
22/06/12 19:30:47.38 ImMFuzyy0.net
むしろ
Mid(a, 2, 5) = 123
これでなんでaが012300000になるの?どう評価されてるの?
469:デフォルトの名無しさん
22/06/12 19:37:46.32 ImMFuzyy0.net
???
Sub foo()
a = 0
Mid(a, 1) = "aaa" '通る
Right(0, 2) = "bbb" 'エラー
Debug.Print a
End Sub
470:デフォルトの名無しさん
22/06/12 20:39:25.03 uZt7xySi0.net
自分ならright("000000000" & "123"の右側を取る
471:デフォルトの名無しさん
22/06/12 21:12:13.58 DaJUN4Jhd.net
ああ右詰で数字をいれたいのか
自分のレスは無視して
そもそも桁数も統一してないからそこから見直せ
472:デフォルトの名無しさん
22/06/12 21:35:58.65 cJxXuNHT0.net
Sub sample()
'01 PIC X(1)
'01 PIC 9(5)
'01 PIC X(3)
a = "A00000ABC": Debug.Print "元データ :" & a
Mid(a, 2, 5) = Format(123, "00000"): Debug.Print "パターン1:" & a
a = "A00000ABC"
Mid(a, 2, 4) = Format(123, "0000"): Debug.Print "パターン2:" & a
a = "A00000ABC"
Mid(a, 2, 5) = Format(123, "000"): Debug.Print "パターン3:" & a
a = "A00000ABC"
Mid(a, 2, 5) = 123: Debug.Print "パターン4:" & a
a = "A00000ABC"
c = "00000"
RSet c = 123
Mid(a, 2, 5) = c: Debug.Print "パターン5:" & a
End Sub
元データ :A00000ABC
パターン1:A00123ABC
パターン2:A01230ABC
パターン3:A12300ABC
パターン4:A12300ABC
パターン5:A 123ABC
パターン1が正解なんだけど、なぜパターン4は3文字分だけ書き換えるんだろう?
パターン4がOKならパターン5でもいけるような気がするが、パターン5は空白を埋める。
RSet Mid(a, 2, 5) = 123 はエラーになる
473:デフォルトの名無しさん
22/06/12 21:46:31.55 ImMFuzyy0.net
それ以前に
Mid(a, 2, 5) = Format(123, "00000")
でエラーが出ないのがおかしいだるお
474:デフォルトの名無しさん
22/06/12 21:52:55.42 SFQsQSvz0.net
ちなみに -123 のときどうする?
475:デフォルトの名無しさん
22/06/12 22:19:45.52 +/mRZvLHd.net
ID:ImMFuzyy0
馬鹿は黙っていればいいのに
そうやって馬鹿を曝け出していると頭の皮膚も曝け出されるぞ
476:デフォルトの名無しさん
22/06/12 22:37:23.13 aOGWTw070.net
midステートメントは今ある文字列に対して別の文字列を被せるだけの動作だよ
477:デフォルトの名無しさん
22/06/12 23:03:38.74 b6RzJ+XoM.net
別の文字列を被せるのは仕様外動作だと思うけどな
478:デフォルトの名無しさん
22/06/12 23:07:02.46 ImMFuzyy0.net
何一つその動作がのってねぇ
URLリンク(docs.microsoft.com)
479:デフォルトの名無しさん
22/06/12 23:10:22.37 UzvPms3IM.net
引数以外の手段で関数に値を代入(?)するという前代�
480:「聞の珍動作 何が起きるか分かったもんじゃない
481:デフォルトの名無しさん
22/06/12 23:13:02.41 cJxXuNHT0.net
つまり
Mid(a, 2, 5) = 123
は
aの2文字目から5文字分ところに、"123"を書き込むんだけど、
3文字しかないから、4-5文字目は何もしないてことだよね。
でも代入の原則論から言えば、足りない部分はスペースで埋めるんじゃないのか?
RSetは足りない部分はスペースで埋めてる。
まあ、それが仕様だて言えばそうだけど、
深く考えて作られてないのかな。
もし、RSetも3文字しか代入しないのなら、RIGHTやFORMATを使わなくても0埋めができるし、
単純な代入だから性能もいいはず。
482:デフォルトの名無しさん
22/06/12 23:16:04.57 cJxXuNHT0.net
>>473
それはmid関数。
midステートメントとは別物だよwww。
URLリンク(docs.microsoft.com)
オレもさっき知ったんだがwww
483:デフォルトの名無しさん
22/06/12 23:29:45.68 nFfW5LM6M.net
そんなものがあったのか!?
けど代入元の型は文字列になってるけど数値を代入していいのか?
484:デフォルトの名無しさん
22/06/12 23:33:25.21 ImMFuzyy0.net
>>476
ありがとう!!!
気になって眠れないとこだった。俺の頭がおかしくなったのかと思ったわw
ステートメント、一度目を通しておいたほうがいいね
URLリンク(excel-ubara.com)
>>477
vbaで何をいっとるんじゃい
485:デフォルトの名無しさん
22/06/12 23:54:08.09 cJxXuNHT0.net
>>477
どの言語もできるような気もするが。
出来ない言語なんかあったけ?
化石のような言語のCOBOLでもできる。
COBOLだと9型の変数があって、VBA風にかくと
Dim a as 99999
a = 123
でaを00123にしてくれる。
a=RIGHT("00000" & 123,5)なんてやってるのをみて驚いたわ。
486:デフォルトの名無しさん
22/06/12 23:56:26.34 as/ibVfq0.net
ちなみに、MidステートメントはLetステートメントと違ってヒープ領域の再確保を行わないようなので
めちゃくちゃいっぱい文字列を結合したり置き換えたりする文字列操作をMidステートメントで高速化できたりはする
色々注意しなきゃならんしめんどいけど
487:デフォルトの名無しさん
22/06/13 14:10:09.78 cuhQaR4kM.net
mid("00000",5-len(a),len(a))=a
なんてやってるの?
488:デフォルトの名無しさん
22/06/13 15:41:58.25 e6QxpplAd.net
文字列の一部分に0付き右詰めの数字を入れたいのだが・・・・
これがやりたい事なんだから
A.MIDステートメントを使うなら右辺の値を5桁固定にする
Mid(a,2,5) = Format(123,"00000")
B.代入するの文字列を代入先の左側+5桁固定の値+代入先の右側にする
a = Mid(a,1,1) & Format(123,"00000") & Mid(a,7,Len(a))
あたりに落ち着くのでは
自分は誤解されないためにもBのようなコードがいいと思うけど
489:デフォルトの名無しさん
22/06/13 18:10:47.94 S+tXl/uoD.net
自分なら
right("00000" & 123, 5)
って書く
490:デフォルトの名無しさん
22/06/13 18:28:06.25 CiY+fWgN0.net
セルの書式設定に 0000# って書けばいいのに
491:デフォルトの名無しさん
22/06/13 19:38:44.31 5YQd33j2d.net
いやどうせVBAでやるならNumberFormatLocalでやろうよ
492:デフォルトの名無しさん
22/06/13 20:02:21.45 3bSnFxDm0.net
要件にもよるが正規表現とFormat()で。
493:デフォルトの名無しさん
22/06/13 21:14:24.62 c4yOIzj40.net
>>482
URLリンク(www.moug.net)
MIDステートメントのほうが速いらしい。
でもオレが試したら逆だったけど・・・・
494:デフォルトの名無しさん
22/06/13 22:37:41.37 pISmU68J0.net
みんなのコードカッコいいわ
やっぱりコードはカッコ良くなきゃ舐められるわな
495:デフォルトの名無しさん
22/06/14 01:08:48.71 GVYlqPTN0.net
>>488
他に見るやつがいないなら動きゃいいとか思ってしまう
496:デフォルトの名無しさん
22/06/14 01:18:48.91 MKKHJJii0.net
てか若者とお年を召された方のコードの書き方が明らかに違うのだが、古臭い目新しいとかあるのかな?
497:デフォルトの名無しさん
22/06/14 02:02:23.05 GVYlqPTN0.net
今は可読性悪いのは駄目ってなってるけど逆に改行や変数名の長さすらケチってた時代もあった
んで言語が進化するにつれて書き方も変わっていった
今でも昔の方法で書けるっちゃ書けるけどそれが古臭いってことだと思う
498:デフォルトの名無しさん
22/06/14 02:07:02.10 MKKHJJii0.net
お年を召された方(60~70代)のコード見たら、やたら変数ばかり多かった印象が。
変数使わなくても普通に書けばいいじゃんて部分まで変数に入れていた。
499:デフォルトの名無しさん
22/06/14 02:33:52.97 TUO2NKc8M.net
>>492
今でもコード中に定数をそのまま書くのは別に推奨されてないぞ
せめて別の人がコードを見た時に数字の意味がわかるようにしとかないとバグの元になる
500:デフォルトの名無しさん
22/06/14 07:10:06.79 r7EVbuk4D.net
>>492のコードはVBAに限らず可読性悪そう
501:デフォルトの名無しさん
22/06/14 07:54:24.65 7uTlYRrCa.net
>>492
変数にいれないで普通の書くのか?
定数なら定数として定義すると思うが
502:デフォルトの名無しさん
22/06/14 08:25:15.24 bcp0w+/6d.net
>名著「リーダブルコード」に「説明変数」という言葉が出てくる。
503:デフォルトの名無しさん
22/06/14 08:35:10.08 T3k1EtCC0.net
マジックナンバーは避けようぜ
後で見返す時に(この4って何を意味してるんだ…?)ってなると効率落ちる
504:デフォルトの名無しさん
22/06/14 08:37:28.94 YQpYn/pu0.net
郵便番号+電話番号ていう文字列があるんだが、郵便番号、電話番号を別々の変数に入れたいので
こうしてみたんだがうまくいかない。
なにか手はある?
いまType1は項目が2個だけど、なるべく一括で入れたいのだが・・・
Type Type1
Zip As String * 7
telnum As String * 11
End Type
Sub Sample()
Dim b As Type1
a = "151123408012341234"
b = a
End Sub
505:デフォルトの名無しさん
22/06/14 09:04:23.14 06qw5AlY0.net
aの文字列が固定長なら
Left(a,7)
Right(a,11)
でダメなんか
506:デフォルトの名無しさん
22/06/14 09:11:18.76 b1sVlKW1M.net
>>498
C系やVBなら可能だけどVBAではWin32APIを使わないと無理
また、可能だからと言って、複数の変数に一括でデータを入れるような書き方は可読性が下がるので推奨されない
コードをコンパクトに見せたいなら代入部分を以下のようにモジュール化するのがマスト
電話をRightで取り出さないのは、固定電話は桁数が違うから
Sub SetNumbers(ByRef T As Type1, N As String)
T.Zip = Left(N, 7)
T.telnum = Mid(N, 8, 11)
End Sub
507:デフォルトの名無しさん
22/06/14 10:48:30.78 WigeF4Tr0.net
>>498
若干無理矢理だけどクラス使えば似たような事は出来る
Type1.cls
Private Zip_ As String * 7
Private telnum_ As String * 11
Public Property Let Default(N As String)
Zip_ = Left(N, 7)
telnum = Mid(N, 8)
End Property
Public Property Get Zip()
Zip = Zip_
End Property
Public Property Get telnum()
telnum = telnum_
End Property
デフォルトプロパティの設定がちょっとトリッキー、こことかを参考に
URLリンク(thom.hateblo.jp)
あとは
Dim a As New Type1
a = "151123408012341234"
Debug.Print a.Zip
Debug.Print a.telnum
508:デフォルトの名無しさん
22/06/14 13:04:52.31 IIEda1opd.net
>>487
何を目的とするかによるけど
速度は重視しないのであれば比較的周知されているBの方がいいのではと思うだけで
書き方なんて色々あるんだから試行錯誤すればいいと思う
509:デフォルトの名無しさん
22/06/14 13:11:14.27 IIEda1opd.net
>>498
記憶があいまいだけど
長さの合計値が同じになる変数を持つ構造体を作ってそれをLSetで代入すれば可能だと思う
Type Type1
Zip As String * 7
telnum As String * 11
End Type
Type Type2
Value As String * 18
End Type
Sub Sample()
Dim b As Type1
Dim a As Type1
a.Value = "151123408012341234"
LSet b = a
End Sub
510:デフォルトの名無しさん
22/06/14 13:57:57.06 yUQgc7GAM.net
>>503
それで代入だけは可能だけど、電話番号が10桁だと末尾に自動的にスペースが入って11文字に補正される
固定長文字列はTrimもできないから、結局構造体を使う方法はトラブルの予感しかしない
511:デフォルトの名無しさん
22/06/14 14:36:41.07 IIEda1opd.net
>>504
与えられたデータだけの回答だからね
与えられた情報以外の事をあーだこーだいう人いるけど
それはその時考えたらよくない?
そもそもそういう事を言い出したら
質問のできるできないはできないって回答になるわけだし
512:デフォルトの名無しさん
22/06/14 14:46:19.33 QIi9ICtD0.net
与えられたデータっていうか、前提条件がはっきりしないからなぁ
>郵便番号+電話番号ていう文字列がある
以外は試してみたっていうコードからの推測だしな
まあおれなら合体文字列のセッターと郵便番号、電話番号のゲッターのプロパティ持つクラス作るかなぁ
中身はLeftとMidでいいんじゃね
固定長で最速を目指すならLSetもありかもしれんが
構造体うんぬんより、固定長文字列がトラブルの予感を感じさせるんだよなぁ、いろんなところで
513:デフォルトの名無しさん
22/06/14 15:27:21.00 jJwMl27ba.net
固定長文字列って文字数で良いんだっけ?
全角でもおなじ?
514:デフォルトの名無しさん
22/06/14 17:23:15.55 QIi9ICtD0.net
>>507
文字数だから全角でも同じはず
というか、文字列はユニコードってことになってるから全角とか半角とかないってことになってるんだよ、いちおう
515:デフォルトの名無しさん
22/06/14 19:35:25.43 vdrsXIkl0.net
関数2つ作ればいいのにわざわざ構造体やクラスつくる意味あんのかな
処理速度を気にするのは自力で動くの作れるようになってからだぞ
516:デフォルトの名無しさん
22/06/14 20:24:08.87 sqy53zZK0.net
>>487
簡単にいうと、なんでもMidステートメントに置き換えれば速くなるってわけでもない(そういう使い方にはちょっと注意がいる)
あと固定長文字列はいかにも速そうだが実は可変長文字列よりパフォーマンスが落ちることが割とあって、これまた扱いに注意を要する
まずは自分の望む動作をするコードを完成させることに注力した方がいいんでないかな
(速度改善や利便性向上みたいなのはなんていうか、キリのない作業でもあるし)
517:デフォルトの名無しさん
22/06/15 07:33:40.74 7lj8rf8tD.net
>>509
クラス1つ作ればいいのにわざわざ関数2つ作る意味あんのかな、
って疑問を持つ奴もいるからどっちもどっち
518:デフォルトの名無しさん
22/06/15 10:47:02.71 EefWJAwfa.net
自力でやれるなら好きに組めば良いけど
それもできない初心者だからな
519:デフォルトの名無しさん
22/06/15 11:15:30.59 WoPQ0lFMd.net
こういうやり方があるよって回答だけすればあとは質問者がそれを選択するだけでいいのに
他人の回答にケチ付けるやつはなんなんだろうと思う
520:デフォルトの名無しさん
22/06/15 11:50:46.53 RetoKdFBM.net
>>513
質問の内容(仕様)が明確じゃない部分を好き勝手に解釈した結果
521:デフォルトの名無しさん
22/06/15 12:43:33.38 2pwDzYJj0.net
>>514
単に性格悪いってだけ
522:デフォルトの名無しさん
22/06/15 13:41:42.48 HRaMYgOd0.net
ユーザーフォームに毎回違う数のラベルを作った時に、それぞれのラベルでクリックイベントを作りたいのですが
ラベル数が変動するので作れません。
こういう場合、存在するどのラベルをクリックしたかを調べるにはどうすればいいですか?
523:デフォルトの名無しさん
22/06/15 14:04:25.53 2pwDzYJj0.net
>>516
昔やろうとしたけど超しんどいよ
vb6にはコントロール配列って機能があってそれを使えばよかったけど、
vbaでなぜかなくなっているので絶望的にめんどくさい
他の方法を考えたほうがいい
どうしてもやるなら「vba コントロール配列」あたりで検索して頑張ってくれ。
URLリンク(www.asahi-net.or.jp)
524:デフォルトの名無しさん
22/06/15 14:41:31.92 EFN5k3S5d.net
>>516
ラベルは最大数で作っといて、必要な分だけVisibleで見せる
525:516
22/06/15 17:15:36.58 HRaMYgOd0.net
>>517
他に方法がなさそうなのでこれでやってみます
>>518
Private Sub Label1_Click() を1000個とか作るのはちょっと汚いので止めておきます
526:デフォルトの名無しさん
22/06/15 17:23:32.33 C/XRb82A0.net
ラベルを動的に1000個作るのは汚くないのかよ
527:デフォルトの名無しさん
22/06/15 17:37:50.64 fn3i9wsI0.net
まずどうして1000個も必要なのかのほうが突っ込みどころな気がする
VBAってフォーム内でクリックした座標の検出できないのかいな
528:デフォルトの名無しさん
22/06/15 17:42:47.22 Vg/305+8M.net
クリックイベントを1000個作るぐらいならクラス化しちゃうかなぁ
どっちにしろ面倒臭いけど
大量にラベル設置した時のリネーム作業を簡単に出来る方法何かない?
529:デフォルトの名無しさん
22/06/15 17:51:28.07 2pwDzYJj0.net
いや普通につくるならプルダウンだろ
何かしらで分岐させれば3,4回の選択で済む
530:デフォルトの名無しさん
22/06/15 18:13:02.83 Vg/305+8M.net
構内マップを作らされてその上にマインスイーパみたいな升目を作らされ、機器の設置場所を設定出来るようにしたい。場所の指定は分かりづらいから文字だけにするのはNGね。なんて業務を振られる事も稀によくある
531:デフォルトの名無しさん
22/06/15 18:14:34.90 C/XRb82A0.net
何をどうしたいのか知らんし、その1000個の元データはどっからどう持ってくるのかしらんけど
Excel VBAだしな
俺ならシートで選択させてフォームのボタンかな
532:デフォルトの名無しさん
22/06/15 18:28:15.26 C/XRb82A0.net
>>524
で、それを実現するのがEXCEL VBAでラベル1000個なのか?
いろいろ検討して最終的にそれしかないとなったならまあご愁傷様
そうじゃないならあほとしか思えん
533:デフォルトの名無しさん
22/06/15 18:47:53.19 Vg/305+8M.net
それしかないじゃなくてそれしか許されないんだよ
アホかって思いながらやってるよ
534:デフォルトの名無しさん
22/06/15 18:57:22.93 myHzQmQR0.net
マス目なら座標取ればいいような気がするが許されないなら仕方がないな
535:デフォルトの名無しさん
22/06/15 19:32:37.12 JFwHiHWC0.net
a=郵便番号電話番号
b=Left(a,7)
c=Replace(a, Left(a, 7), "")
536:デフォルトの名無しさん
22/06/15 19:34:39.87 8qf24aUq0.net
1000ならまだいける、10000だったら逃げるけどな
537:デフォルトの名無しさん
22/06/15 19:40:20.96 2pwDzYJj0.net
>>529
NG
538:デフォルトの名無しさん
22/06/15 19:56:19.48 y5599rfC0.net
ワークシートの背景をマップにしてセルクリックでイメージを表示するイベント書けば?
539:デフォルトの名無しさん
22/06/15 19:57:21.42 TJhxNtAv0.net
昔ながらの紙の地図帳をイメージすればいいのか
最初のページで全体図をマッピングした概略図を掲げといて
詳細の判るまで拡大した一ページ(※)をマス目で区切って、縦に 1 2 3 横に A B C とか振り分けて
例えば B 4 とかをクリックしたら「設備名」の詳細を表示するとかか?
ユーザーフォームでそれぞれのマス目を呼び出すよりは、インデックスのSheetに全体図
そこをクリックで各Sheet (※)へジャンプとかのが楽そう 上が承認するかどうかだけど
上に承認してもらうようにサンプル作ってプレゼンしてもいいし
540:デフォルトの名無しさん (スッップ Sd1f-UWq1)
22/06/15 21:04:50 m3jNjkHdd.net
コントロールフォームの動的配置 & クラスモジュールでイベント起こすに一票
どうせどこかでイベント共通化の処理が入るだろうからスケーラビリティ確保のためにも
541:デフォルトの名無しさん
22/06/15 21:45:31.66 y5599rfC0.net
>>534
うぬ、それが一番だと思うけど何故にエクセルなのかと思ってしまう
542:デフォルトの名無しさん
22/06/16 01:45:48.79 s8B3FZ9N0.net
1000個のラベルと見せかけて、
実は1個だけラボルが混ざってるんじゃないだろうか。
543:デフォルトの名無しさん
22/06/16 07:24:34.47 FKA1V1750.net
テキストファイルを開いて1行ずつ中身を読んでます。
Open ファイル名 For Input As fNo
Line Input fNo, buff
途中まで読んだあと、先頭から読み直したいです。
ファイルを閉じてまた開くのは嫌です!
下のURLを参考にして、
FileSystemObjectを使ってすべてを1変数に読み込み
改行コードで区切って配列化して
先頭から読み直したいときは配列の先頭から読みなおし
という方法を思いつきましたがコード修正が大変なので
もっと楽な方法をご教示いただけたら幸いです。
URLリンク(bokulog.org)
544:デフォルトの名無しさん
22/06/16 07:25:26.98 FKA1V1750.net
sageそこねスミマセン
545:デフォルトの名無しさん
22/06/16 08:10:36.64 fGEidPk00.net
>>529
1桁足りないじゃんって思ったら
Optionbaseデフォルト値でやるのが普通なのか?
俺はどうにも馴染めないので1でやってるが
546:デフォルトの名無しさん
22/06/16 08:12:48.83 H6wZRQj3M.net
>>537
vbaにseekってなかったっけ?
547:デフォルトの名無しさん
22/06/16 08:52:14.47 ijJBEomdd.net
どんなコード書いててそこからどんな手直しするかわからないのに回答のしようがないよね
548:デフォルトの名無しさん
22/06/16 10:17:53.34 G3W4msQ6a.net
>>537
ファイルを閉じて開き直すのが祖谷な理由が書かれてませんので
嫌でもやればいいんじゃね
549:デフォルトの名無しさん
22/06/16 10:35:38.36 OXzWqs7e0.net
IE終了したけど、今日の時点ではVBAからIE操作できた。いつまで保つか明示されてる?
550:デフォルトの名無しさん
22/06/16 13:56:39.50 j/xQYS4f0.net
サポートしないだけで
PC内にIEがある限り
永久に使えるんじゃないか?
551:デフォルトの名無しさん
22/06/16 14:04:02.85 9IfQq+aNM.net
そのうち深刻な脆弱性が見つかったらセキュリティソフトでウィルス扱いされるようになって、
IEコンポをロードした瞬間にウィルス警告が出るようになるだろうな
552:デフォルトの名無しさん
22/06/16 14:55:49.33 TulzdQgt0.net
WannaCryのときMSはサポート外にパッチ出しちゃった前科あるからなあ
なんだかんだ面倒みそうでなあ
553:デフォルトの名無しさん
22/06/16 19:55:32.69 g5Jzetu50.net
>>543
7年くらい大丈夫と見たような気がする
554:デフォルトの名無しさん
22/06/16 21:22:11.67 wccj32jkd.net
>>547
何の根拠もないな
危険な脆弱性が明日見つかったらそれで終わりだよ
555:デフォルトの名無しさん
22/06/16 23:09:10.84 BfseDl080.net
URLリンク(www.ka-net.org)
素直にedgeに対応したコンポーネント出してほしいなぁ
webapiからjsonを読み込むときにIEだけはいちいちダウンロード確認のポップアップが出て止まる挙動で苦しんだ記憶があるから嫌い
556:デフォルトの名無しさん
22/06/17 02:08:51.88 qX3KJPna0.net
>>540
Seek命令あるけど、あれランダムかバイナリモード用だと思う
が、試したがシーケンシャルファイルでもバイト位置で指定できるな
557:デフォルトの名無しさん
22/06/17 07:31:22.44 tno+JwDPr.net
>>547
エッジで互換モードする期間じゃない?
558:デフォルトの名無しさん
22/06/17 08:55:59.12 LpDNne3Kd.net
IEで終了したのは「アプリ」の「サポート」だけだぞ
IEオブジェクトはしばらく残すと明言してるから、マクロから使うのはまだ問題ない
けど、猶予期間の今のうちに社内ルールの変更など根回しはちゃんとやっとけよ
559:デフォルトの名無しさん
22/06/17 13:19:56.68 6WxlvkUPd.net
IEが非対応のサイトも増えてくるから対策出来るならした方が良いのはわかってる
が現状Selenium Webdriverが最適解のようでいちいちバージョン合わせるためにダウンロードしたり記述が変わったりすげー面倒
MSがどうにかしてくれると淡い期待をしたいが
560:デフォルトの名無しさん
22/06/18 02:47:00.46 x1pEIMNT0.net
Edgeに限らず、新しくなって使いづらくなるのホント意味不明。
PC起動するとWindows11にしませんか?って言われるけど、もうお前なんか信用しとらんわ!
561:デフォルトの名無しさん
22/06/18 06:12:14.25 tcSE7QQr0.net
まぁしょうがない
良かれ悪かれ何でも時代の変化で変わって行く
VBAは関係ないけどちょっと前にとあるシステムで
IE → EDGE の移行作業行ったよ
開発ツールは確かにIEの方がEDGEより
使いやすかったと思う。慣れだろうけどね。
562:デフォルトの名無しさん
22/06/18 06:56:56.06 8iz4uO0y0.net
世の中がセキュリティに舵を取るようになったからね
楽観論じゃなりゆかない時代なんだから仕方がない
563:デフォルトの名無しさん
22/06/18 08:20:33.50 7fgrQLBR0.net
セキュリティを理由に広告ゴリ押し
こうはなりたくないね
564:デフォルトの名無しさん (ワントンキン MM8a-ctFn)
22/06/18 10:08:00 SSs68PlgM.net
もうマイクロソフトの為に仕事するのやめませんか?
565:デフォルトの名無しさん (アウアウウー Sa47-iAjv)
22/06/18 10:08:32 Os2AgP5Ia.net
ieで取れなかった個人情報を集めてるからな
566:デフォルトの名無しさん
22/06/18 10:59:15.44 0BdDrqNN0.net
ExcelもIEも何年も使ってないわ
kneetじゃねーよ
567:デフォルトの名無しさん
22/06/18 11:55:08.82 +2kbSQo1M.net
VBAもそろそろかな
568:デフォルトの名無しさん
22/06/18 13:40:01.62 T0WefD6fd.net
そう言われ続けて20年たった
569:デフォルトの名無しさん
22/06/18 16:09:32.02 JcC1S0zs0.net
VBA無くなればこのスレも下火になるかもな。
パワークエリスレが活気出る
570:デフォルトの名無しさん
22/06/18 16:29:16.53 Es40ajdn0.net
PowerQueryは万能じゃない
VBAと比較するもんじゃない
571:デフォルトの名無しさん
22/06/18 18:07:43.74 lnn1Xxq/M.net
PowerShellは万能だぞ
ExcelのワークシートもWEBブラウザも操作できる
572:デフォルトの名無しさん
22/06/18 18:14:09.38 59smDk8ed.net
デフォのPS 5.1はクソだけどな
BOM付きUTF-8を要求したり権限厳しかったり
573:デフォルトの名無しさん
22/06/19 01:44:47.25 7uc9nhCj0.net
万能かもしれんがVBSみたいな手軽さが無いのがな…
574:デフォルトの名無しさん
22/06/19 10:44:47.27 uZGRAEGZp.net
Power shellは
.Net Freamworkが入ってなければただのShellだもんな
なら素直にVSの類いれとけばいい
575:デフォルトの名無しさん
22/06/19 21:06:19.28 +DYD1D5ZM.net
Powershell 7は.NETと関係ない汎用のコマンドラインシェル
macOSやLinux向けの製品すら存在する
576:デフォルトの名無しさん
22/06/19 21:33:18.64 nfQGh1M+d.net
追加でWebからインストールしなきゃいけないPowerShell(6以降)に存在価値はない
それが許されるんならあえてPowerShellなんて使わずとももっと優れた選択肢がいくらでもある
577:デフォルトの名無しさん
22/06/19 22:00:01.16 c6U60qvsM.net
Win11でもオプションなの?
うちいまだにWin10だからわからん
578:デフォルトの名無しさん
22/06/20 09:16:41.32 ZiXH0O+ed.net
win11でも入ってるのは5だけ
6以降はサポート期限がLTSでもリリースから2年しかないから、
仮にWindowsにプリインストールすると2年ごとにWindowsの更新で強制的にメジャーバージョンが上がって既存資産がぶっ壊れるリスクが生じる
だからどうしてもユーザーの自己責任で塩漬けにできる選択肢が必要で、Windowsの一部として扱うことが不可能なんだよ
579:デフォルトの名無しさん
22/06/21 14:59:24.30 nrTPRY1Pr.net
質問です
580:デフォルトの名無しさん
22/06/21 15:16:20.71 nrTPRY1Pr.net
質問です
ある動画で「連想配列とユーザー定義型を組み合わせると便利」ということで色々勉強していたのですが、ユーザー定義型ってpublic宣言しても別モジュールで呼び出せないですよね?
てことは別モジュールにプロシージャがあって、それを引数設定して呼び出してもエラーになりました
そこでクラスモジュールを使っても同じような事ができると聞き、クラスモジュール内に3つ型を宣言した変数を作ったのですが、それを配列に入れようとすると「配列に入れることができません」というエラーがでます
具体的には以下のとおりです
Dim c() as class1
Set c = New class1 ←ここでエラーがおきます
この記述を
Dim c() as New class1
とすればエラーは起きないのですが、別モジュールの引数に
sub test(c as New class1)と記述はできないので困っています
なにかいい方法はないでしょうか?
581:デフォルトの名無しさん
22/06/21 16:23:50.93 NaTv3t2Wr.net
すみません
私の勘違いでした
普通にユーザー定義型でできました
582:デフォルトの名無しさん
22/06/22 00:02:57.35 fcQ3wVRo0.net
ネタ投下
「貴様は一体何を仰ってるんだ」Excelマクロの納品時、担当者に言われたひと言にTwitterざわつく - 「良さを完全に殺しに来てる」の声も
URLリンク(news.mynavi.jp)
583:デフォルトの名無しさん
22/06/22 01:16:32.40 /230SSBOd.net
>>576
くだらなすぎる
読むのは時間の無駄
584:デフォルトの名無しさん
22/06/22 02:03:36.70 /pBOMLc50.net
うさんくせー
セミナー屋ほど胡散臭いのはないわ、
やっぱ5ちゃんねるが一番!
585:デフォルトの名無しさん
22/06/22 07:25:36.31 dKKatMvdD.net
嘘松藁人形
手作業大好きおじさんが一人いましたって面白くもない話
586:デフォルトの名無しさん
22/06/22 07:29:12.94 bFCzOkRx0.net
話の内容はともかく客に説教とかアホすぎる
587:デフォルトの名無しさん
22/06/22 09:39:47.61 fcQ3wVRo0.net
「ミスが起こるような仕組み」でなくて、
まるっきりブラックボックスでもなく、
人が過程を辿れるようなの、作りたいな・・・
とは思う。
588:デフォルトの名無しさん
22/06/22 11:11:38.88 SHGr4jOjd.net
完全にネタ、作り話だろこれ
そもそもVBAごときでミスが起きないシステムなんて作るの不可能だし
マクロはたくさんある工程の一つに過ぎないんだから、業務全体で見ればミスが起きる余地なんてほかにいくらでもあるだろうに
589:デフォルトの名無しさん
22/06/22 11:58:03.94 qNhhYbIzd.net
話題にするだけばからしいでしょ
こんなの言ったもん勝ちだしね
590:デフォルトの名無しさん
22/06/22 12:09:22.34 PZ27NODvM.net
ブラックボックスでミスが見つけられない
を独自解釈しただけだろ
591:デフォルトの名無しさん
22/06/22 13:02:01.70 acQQyPov0.net
>>581
どうせDebug.Printするんだろうからデバッグモード付きで納品すればいいんじゃね
592:デフォルトの名無しさん
22/06/22 13:45:53.56 5jQGKRYma.net
マクロの作成頼まれたけど要求内容があまりにも怪しかったので、
マクロと一緒に「入力に対する出力が合っているか」と「そもそもの入力が誤っていないか」を簡易的に(電卓などで)求められる計算方法を渡した
そしたら約3ヶ月に一回ぐらいの割合でそもそもの入力すべきデータを誤っていたことが判明した
ってことはあったな
後で調べたら、こういうのは「封筒裏の計算」っていう手法らしいけど
593:デフォルトの名無しさん
22/06/22 13:46:18.61 qNhhYbIzd.net
>>581
保存期間なり世代管理してログ出力すればいいでしょ
594:デフォルトの名無しさん
22/06/22 15:52:29.00 acQQyPov0.net
>>586
祝儀袋の封筒に書かれた金額と入っている金が違うやんってことか
なるほど日本人はうまい例えを作るもんだと思ったら全然違ってた
595:デフォルトの名無しさん
22/06/22 17:31:38.14 /pBOMLc50.net
わろた
596:デフォルトの名無しさん
22/06/22 19:32:15.50 XefayqmG0.net
Excel2013のVBAで
Debug.Print (1 = 1) * 1
てやると-1になるけど、
セルで
=(1=1)*1
て入れると1になる。
これって不具合?
597:デフォルトの名無しさん
22/06/22 19:47:11.74 5Bb+Exnq0.net
ワークシート上の(1=1)、つまりTRUE値は「1」だけど
VBAでのTrue値は「-1」だから合ってる
598:デフォルトの名無しさん
22/06/22 21:45:57.03 Io6qCa48M.net
>>576
毎日新聞の戯言
お前暇やろ
599:デフォルトの名無しさん
22/06/23 00:03:21.37 RpD62pBf0.net
VBAは好き
どんな職場で働けばいいの?
正社員じゃなくていいです。
600:デフォルトの名無しさん
22/06/23 06:39:08.02 d1WC2qsrM.net
>>593
事務派遣。
ゆるい職場ならvba使用が禁止されて無いから与えられた業務で使って見ればいい。
601:デフォルトの名無しさん
22/06/23 06:45:25.15 ms1G02BaH.net
ワイまさに派遣事務でたまにVBAやってこちらのみなさんにお世話になってる(*´ε`*)
602:デフォルトの名無しさん
22/06/23 07:34:26.56 OFyvXiPXd.net
>>593
日本で働くのはやめておけ
将来性無いぞ
603:デフォルトの名無しさん
22/06/23 07:40:40.65 SBEKkY350.net
>>593 派遣おすすめ vba縛りの事務なら、めちゃくちゃ楽で定時に帰れる そういう人を見たことある 一生生きていけるだけの金もってたら、 そういう人生送りたかったってぐらいやりたい生き方だわ
605:デフォルトの名無しさん
22/06/23 09:00:02.54 KOp9wOBp0.net
生涯困らない金があって、VBAの事務作業か もっと他に・・ いや、どうぞご自由にだけどさ
606:デフォルトの名無しさん
22/06/23 09:06:50.94 SBEKkY350.net
>>598
一時金持っててさ、毎日酒のんでゲームしてパッパラパーな人生送ってたのよ
当然、あっという間に体壊して病院行き
適度な仕事は、自分の健康につな
607:がるよ
608:デフォルトの名無しさん
22/06/23 09:13:48.26 RH4NXyqT0.net
貧困な想像力って悲しいよね
609:デフォルトの名無しさん
22/06/23 10:45:06.10 omFSpe9sd.net
VBAしかできないやりたくないような人だとしたらそのような人を使ってくれるところは少ないのでは・・・
なのでここで聞いてもいい回答はもらえないでしょ
610:デフォルトの名無しさん
22/06/23 10:56:16.87 M4XLJX6ga.net
いまさらVBAには関わりたくないな
そもそもVBA自体よりもVBAを使ってる連中と関わりたくない
611:デフォルトの名無しさん
22/06/23 12:20:08.77 QS7NhMN+a.net
安定のNHK
612:デフォルトの名無しさん
22/06/23 12:41:27.99 8671gq8M0.net
なんでココにいるのか?
ってツッコミ入れたら負けなんかなw
613:デフォルトの名無しさん
22/06/23 13:16:25.44 Qj8PYDZt0.net
ちがうでしょ、所謂かまってちゃんでしょ。
慰めてやるべき
614:デフォルトの名無しさん
22/06/23 13:34:30.38 iXtKw0QdM.net
プログラマからしたらVBAしか出来ないって使えないやつでしかないからなぁ
615:デフォルトの名無しさん
22/06/23 14:08:36.94 SBEKkY350.net
>>606
無知なのにテキトーに言い過ぎ
vbaは特殊で、保守がメインの現場ばかり。vba使えればそれでいい
立ち位置的にはCOBOLに近い
616:デフォルトの名無しさん
22/06/23 14:41:25.25 RH4NXyqT0.net
>>607
世の中を知らなすぎ
どんどんVBAは消えていってる
MSすらVBAではなくPython導入しようとしてたが、
openpyxlやxlwingsの出来が良かったのでそれらを薦めてるんだよ
突然IEのサポートが終わるとか言ってる奴くらいだぞ知らないの
617:デフォルトの名無しさん
22/06/23 14:45:19.51 SBEKkY350.net
>>608
?
だから保守メインって言ってるじゃん
新規開発なんて無く基本的に別言語とは関わりがない
618:デフォルトの名無しさん
22/06/23 14:51:02.16 9dA5CJ8Sd.net
そのツールでできるならどんなの選んでもいいだろ
>>608みたいなのはそんなこともわからず俺こんなの知ってるぜスゲーだろって言いたいだけのかまってちゃんだろ
VBAはそもそも基本的にWindowsPCなら入っているであろうExcelさえあれば
他に何も入れなくても使う事ができるという1点で他にはない優位性があるわけだし
職場によっては変なものを入れるのはNGみたいなところもあるんだから
そういう事も踏まえないでただ批判だけするのはおかしい話
619:デフォルトの名無しさん
22/06/23 15:10:52.41 Ukh7Grgra.net
ほらな
やっぱりVBAだろ
620:デフォルトの名無しさん
22/06/23 15:22:59.47 RH4NXyqT0.net
>>609
VBAからPythonへのリファクタリングが進んでるって話だよ
リファクタリングって新規開発ではなく保守なんだけど理解できないようだしなw
今後もVBA使っていくつもりなら、
VBAがやがてどうなるとか調べるのはかまってちゃん以外でも当然の行為だろ
ましてや仕事なら尚のこと
621:デフォルトの名無しさん
22/06/23 15:38:55.20 SBEKkY350.net
>>612
へぇ、それは知らなかったわ、物知りだな~
具体的にはどんな案件がvbaからpythonになってるの?
622:デフォルトの名無しさん
22/06/23 15:45:42.70 SBEKkY350.net
エクセル・accessの簡易的・汎用的な入力方法を全部捨てて、
pythonで作り直す案件とはどういうものなのだろうか?
概算するまでもなくものすごく高くなるんだけど、一体どういう案件だとコストダウンになるのだろう?
早く回答してほしいなぁ。まだかなぁ
623:デフォルトの名無しさん
22/06/23 16:48:28.59 RH4NXyqT0.net
>>614
openpyxlやxlwingsって具体的な名前出してるのに調べたり理解できない奴が煽ってるのか
無知な上に調査も思考もできない役立たずがVBAだけで食っていくとか何の冗談だよ
624:デフォルトの名無しさん
22/06/23 17:06:30.04 Qj8PYDZt0.net
VBAだけじゃなくて、Excelの一通りの知識も必要では?
事務員なら
625:デフォルトの名無しさん
22/06/23 17:13:43.84 SBEKkY350.net
>>615
おう見落としてたわサンキューな
勉強してくるわ
626:デフォルトの名無しさん
22/06/23 19:20:48.18 xtvi5Qi8a.net
案件って言ってるのに
> openpyxlやxlwings
とか、アホ丸出しやんw
627:デフォルトの名無しさん
22/06/23 19:24:07.75 SBEKkY350.net
>>618
その単語だけで内容は伝わるよ
628:デフォルトの名無しさん
22/06/23 19:41:27.49 T964c/cqM.net
派遣でvbaてアホすぎるだろ
629:デフォルトの名無しさん
22/06/23 19:50:50.76 YBqf9Go9H.net
>>620
なんで?>>595だけどVBAやらされることもあるんだけど、、
まあ大したものじゃないけどね(^_^;)ちなみに女です。
630:デフォルトの名無しさん
22/06/23 20:41:26.32 8GFyplgN0.net
>>619
内容説明してみ
まあ必死ではぐらかすんだろうけどw
631:デフォルトの名無しさん
22/06/23 20:48:49.23 SBEKkY350.net
>>622
これがあればvbaをpythonに置き換えるコストがクッソ下がる。案件は基本的に何にでも対応できる
なかったらめちゃくちゃなコストになるから非現実的だと思ってた
632:デフォルトの名無しさん
22/06/23 21:09:00.04 8GFyplgN0.net
>>623
> openpyxlやxlwings
の説明なんて要らんよ
> 具体的にはどんな案件がvbaからpythonになってるの?
の回答よろしく
633:デフォルトの名無しさん
22/06/23 21:25:01.78 SBEKkY350.net
>>624
知らんよ。俺は見たことない
どんな案件にでも対応できるからユーザー側がpythonを指定して発注することは少ないだろう
開発側の好みでpythonを選んでいるだけだろうな
webサーバーで処理するという点ではエクセル→スプレッドシートの移行にかなり近い。
634:デフォルトの名無しさん
22/06/23 21:39:08.37 8GFyplgN0.net
知らんのならいちいち絡んでくるなよ...
そもそもどんな内容が伝わると思ってたんだよw
635:デフォルトの名無しさん
22/06/23 21:55:24.01 SBEKkY350.net
何でも低コストで作れる以上、具体的な案件なんてもう必要ないだろう
636:デフォルトの名無しさん
22/06/23 22:56:14.90 Qj8PYDZt0.net
会社の人事部の仲良い人に聞いたけど、派遣君でVBAできるヤツは希少な人材と言っていたぞ
ましてやExcel自体まともに操作できない派遣が多い中で。
637:デフォルトの名無しさん
22/06/24 03:54:27.16 ctS3zPLY0.net
まぁ手広くやるかVBA極めるかだろうけどある程度は手広くやらないとね
「VBAは死ぬ」と言われてもう随分経つけど一向に死ぬ気配はないのは確かだけど
VBAしか出来ないとOfficeに乗っかったアプリしか開発出来ない井の中の蛙状態になるのも確か。
それに他言語やってるとその言語の考え方も取り入れてVBA作るようになるから何かひとつやるにしても取れる手段が増えるんだよね。
まぁ個人的にはPythonは下手に手をつけると算数しか出来ないバカな俺には数学出来ないといけないお仕事が降ってきそうでちょっと敬遠するけど。
後JAVAは個人的に肌に合わなかったのでやって良かったってなるのか分からないけど、
JavaScriptはWeb系やるならまず必須になるし、とりま後はC#辺りやっとけばいいんじゃないかと思う。
638:デフォルトの名無しさん
22/06/24 04:14:34.15 ctS3zPLY0.net
後、このスレには俺みたいなジジイが結構いるみたいだから話しておくと、
遠い昔まだPCがマイコンとか呼ばれていた頃、すがやみつるって「ゲームセンターあらし」とかいう漫画描いてた人が「こんにちはマイコン」ってBASICでブロックの無いブロック崩しみたいなののプログラムを作る工程を漫画で説明しながら描いてたんだけど、
ちょっと前に「こんにちはPython 」って同じ感じの内容をPython でやってるのを出してたから話のネタに買ってもいいかも知れないよ。
ただ、新品買うほどの価値があるかは微妙だから中古でもいいと思うけど。
まぁスレ違いだからこの辺にしとくわ。
639:デフォルトの名無しさん
22/06/24 04:39:40.48 61TcLrsp0.net
activecellを使って掛け算をしたい時どうすればいいのか分かりません
教えていただけたら嬉しいです。
inputboxで数値を入力してその数値を使って計算したいです。計算する時にactivecellを使いたいです
640:デフォルトの名無しさん (ワッチョイ 1768-GvQ2)
22/06/24 07:42:23 24qb8CGk0.net
>>631
Sub foo()
Debug.Print ActiveCell.Value * InputBox("")
End Sub
641:デフォルトの名無しさん (アウアウウー Sa47-vQ73)
22/06/24 09:49:37 K2we1Lara.net
こういうのが尼崎事件を起こすんだろうな
642:デフォルトの名無しさん
22/06/24 12:20:36.40 SlsiDUV+a.net
需要と供給
643:デフォルトの名無しさん
22/06/24 15:06:54.11 kZFfj4TG0.net
難しい話ね。
これから他の言語も必要なら習得の必要あるしね。
644:デフォルトの名無しさん
22/06/24 15:26:03.25 bvc+MoD20.net
VBA覚えるの大変ですね
理解してコピペできるくらいにはなりたい
645:デフォルトの名無しさん
22/06/24 15:31:46.16 RLAl6U0RH.net
一度VBAエキスパートとか取るくらい勉強すれば
毎回Offsetの横は行が先か列が先かどっちだったかな?って(Resizeでも同じことやってる)やってるワイでも
大体コピペで作れるくらいには成長するよw
646:デフォルトの名無しさん
22/06/24 19:49:28.19 bvc+MoD20.net
>>637
ありがとう
やってみるか
参考書検討しようかな
647:デフォルトの名無しさん
22/06/24 20:26:28.92 oJCwQA/d0.net
コピペしたVBAってみんな捨てて去ってるのかな、貰ったことないかも。
648:デフォルトの名無しさん
22/06/24 21:29:08.60 kZFfj4TG0.net
コピペはダメと教わったがな最初の会社で。
あちぃなしかし今日は
649:デフォルトの名無しさん
22/06/24 21:34:54.88 p6zHePCT0.net
熱がこもって32度あるわ
650:デフォルトの名無しさん
22/06/24 21:35:55.33 p6zHePCT0.net
コピペしてそのまま使うことはほぼなくなる
コンパクトにまとめないと、後で見て何書いてるかわからなくなる
651:デフォルトの名無しさん
22/06/24 23:00:17.91 oJCwQA/d0.net
ネットにうpしてあった100行のやつをコピペして100000行にしてる、コンパクトという発想がなかったわ。そもそも意味わかんない行もあるけど消すと動かないし。
後任に渡そうと思ったけど恥ずかしいからやめとくか...。
おまえら上級者なんだね。
652:デフォルトの名無しさん
22/06/24 23:49:49.39 ueFhN9Vh0.net
VBAはコピペして動くからいいよな。
Pythonはだいたい動かない。
しかも、Pythonのページ作るやつて
断片的にソースを乗っけるから、なおさら動かない。
653:デフォルトの名無しさん
22/06/24 23:54:16.48 WnxbT+0Sr.net
コピペして動かすのって怖くないか?
少ない量ならまだしも100行だと何が起きてもおかしくない
654:デフォルトの名無しさん
22/06/25 01:09:59.54 XeF3ZBAK0.net
それを修正できるスキルがあれば別かもだけど、なかなかいないのでは
655:デフォルトの名無しさん
22/06/25 08:29:17.86 hk0FSiYld.net
ネットソースだとwsの指定とか省略されててコピペじゃ怖くて使えたもんじゃない
656:デフォルトの名無しさん
22/06/25 09:09:54.09 HMw3/wS6H.net
自分で一から書ける能力があればわざわざコピーなんざしないのさ。。。(-_-)
切り貼りつぎはぎだらけで変数の宣言がぐちゃぐちゃになってる
分かってくれる人いないかな(笑)
657:デフォルトの名無しさん
22/06/25 09:43:24.30 XeF3ZBAK0.net
独創でコード書けないと保守で詰むでしょ。
658:デフォルトの名無しさん
22/06/25 10:00:09.34 kapo/xgia.net
コピペが悪いのではなく、コピペで作ったコードを自分が提供した責任があるのだよ
659:デフォルトの名無しさん
22/06/25 10:15:11.28 HMw3/wS6H.net
>>649
自分だけで時間短縮のために使ってるマクロだからそんなに困らないよ
みんなに配布するレベルはこれからもしないと思う^^
660:デフォルトの名無しさん
22/06/25 10:49:20.62 Wc9Qs34b0.net
>>648
分かるけど理解はしない
それを許したらそこでおしまい
661:デフォルトの名無しさん
22/06/25 10:54:34.90 PITDVbGU0.net
まあ自分で使うだけならいいんじゃね
662:デフォルトの名無しさん
22/06/25 12:26:01.77 W4jZJdCLd.net
書ける能力あっても今までに作ったコードをコピペするだろ?
場合によっては共通関数の入ったモジュール程度を持ってくるにしても
お前らもしかして同じこと1から書いてるの?
663:デフォルトの名無しさん
22/06/25 12:41:36.76 7YC4We+Er.net
別部署に行って、「規則が変わるからこのマクロも修正してくれ」って言われ、中を見てみたらセレクトメゾットやコピーメゾットが使われてた時の絶望感
「クリップボードの履歴を有効にしていると正常に作動しない事があるから必ず無効にしてくれ」ってそれ書き方おかしくないか?
そして変数の宣言が強制されていなくて更に絶望する
664:デフォルトの名無しさん
22/06/25 12:56:07.50 Fu1pMYi/M.net
>>655のレベルもたぶん似たようなもんだよ
665:デフォルトの名無しさん
22/06/25 14:57:17.56 XeF3ZBAK0.net
>>654
と言うより、作って使用したらマクロは消しているのです。
再び必要になったら1から書いてますはい。
職場のローカルルールとして。
666:デフォルトの名無しさん (ワッチョイ 3f7c-PGuA)
22/06/25 17:13:39 ehcxDoIm0.net
>>657
ないわー
関数自体が使いまわし前提の考え方だし
667:デフォルトの名無しさん
22/06/25 17:43:12.02 hk0FSiYld.net
>>654
理解しないでコピペするか理解して書いたコードを使い回すかの差は途轍もなく大きい
668:デフォルトの名無しさん
22/06/25 18:56:11.02 XeF3ZBAK0.net
それどころか回りの奴らはVBAにしろExcelの学習すらやろうとしない。
仕事終わったら飲みに行く事しか考えていない。休日も何も努力しない現実。
興味ないヤツには進めてもダメなのかな
669:デフォルトの名無しさん
22/06/25 19:21:59.19 WbawSRHfM.net
VBA使いに向上心を求めるのは酷でしょ
それがないからこそVBA止まりなのに
670:デフォルトの名無しさん
22/06/25 21:29:35.48 Ujo38STt0.net
>>660
自分が使うのは勝手にしろだけど、それで優越感に浸って「周りの奴らは~」とかキモすぎだろ
たかが仕事で使うの1つのツールごとき にここまでイキれるのはヤバいわ
671:デフォルトの名無しさん
22/06/25 21:31:08.83 tv1Cabyi0.net
他はすべて負けてるから何か一つでも勝てるものがほしいんや
672:デフォルトの名無しさん
22/06/25 21:32:27.25 xn3lQ0RO0.net
レスバで勝てば世界ランクあがるしな
673:デフォルトの名無しさん
22/06/25 21:44:09.88 VazVwqbS0.net
>>647
それってコピペしただけじゃ動かないってことよね?
動くように自分で指定すると思うんだけど、こわいってのはどういう事なんだぜ?
674:デフォルトの名無しさん
22/06/25 21:53:20.34 Of9vbGQH0.net
>>663
負けの数ではお前が一番だ
675:デフォルトの名無しさん
22/06/25 22:26:51.85 XeF3ZBAK0.net
勝利するかために複雑な知識や技術を身につけているのだが??
間違ってる?
676:デフォルトの名無しさん
22/06/25 22:29:13.51 hk0FSiYld.net
>>665
wsを指定しないとActiveSheetで動こうとするから誤作動の原になる
677:デフォルトの名無しさん
22/06/26 00:40:58.82 NOZ7SEa20.net
Webbrowserで証明書を自動選択する方法は無いものでしょうか?
678:デフォルトの名無しさん
22/06/26 00:44:34.36 NC1QoP++r.net
>>667
誰に勝利するの?
何に勝利するの?
679:デフォルトの名無しさん
22/06/26 07:38:11.30 5vPg/0Rp0.net
他言語やったからって
excelやVBAでやったことが無駄になることはないよ
他の言語で作ったもののUTのエビデンスをとるのに
excelがもし無ければと思うとゾッとするし
テストデータ作成にもVBA使うととっても便利な場合が多いし
680:デフォルトの名無しさん (ワッチョイ 8f63-BYhf)
22/06/26 09:43:13 /e5N//9v0.net
エクセルのある列に数字が入ってます。
そのエクセルと同じ階層にあるフォルダの下に
上記の数字から始まる名前のフォルダがあります。
(数字のあとに日本語が付いてます)
このフォルダの探し方を教えていただきたく
681:デフォルトの名無しさん (ワッチョイ 0f63-BYhf)
22/06/26 09:45:37 Xa6L6yDT0.net
会社のパソコンでVBAを使って
pdfをテキストへ変換しています。
(com.adobe.acrobat.plain-text)
変換処理は不安定でエラーが出ることが多いが
成功することが多いです。
しかし有料ライセンスは一切買ってもらっていません。
これはライセンス違反ですよね??
違反ならもうやめます。
682:デフォルトの名無しさん (ブーイモ MM5f-c/Mv)
22/06/26 09:56:38 IFq6Yt8DM.net
>>672
num=cells(行,列).value
dirname=dir(thisworkbook.path&"\"&num&"*",vbDirectory)
683:デフォルトの名無しさん (ブーイモ MM5f-c/Mv)
22/06/26 09:59:07 IFq6Yt8DM.net
dirname=dir(thisworkbook.path & "\" & num & "*", vbDirectory)
684:デフォルトの名無しさん
22/06/26 10:18:26.90 6drPPg2U0.net
>>673
PowerQueryでもAdobeのAcrobatなしで
pdfをある程度変換出来るけど?
685:デフォルトの名無しさん
22/06/26 10:25:43.07 yfX3wl/l0.net
>>673
adobeに聞けとしか
686:デフォルトの名無しさん
22/06/26 11:39:03.04 XMcnD9d40.net
EULA読んでダメって書かれてなきゃいいだろ
687:デフォルトの名無しさん
22/06/26 12:11:58.60 hFDBYOe90.net
クラスが入ってるCollectionの要素を置き換えるにはどうすればよいでしょうか?
Set col(2)=New MyClass()
とやってもできないんです。
688:デフォルトの名無しさん
22/06/26 12:23:08.37 tixRR40Y0.net
置き換えはダメだからRemoveしてAdd
689:デフォルトの名無しさん
22/06/26 13:30:17.16 hFDBYOe90.net
>>680
そうですか
ありがとうございます
でもなぜ置き換えできないのでしょう?
そのしくみを理解したいのですが
スキルがあがるステップだと思うので
690:デフォルトの名無しさん
22/06/26 13:35:51.31 VKkh0pnir.net
IEの入力欄に値いれるマクロ使ってたんだけど、エッジに移行して動かなくなったんよ
エッジの入力欄いじる方法ってご存知ないですか?
調べてもよくわからなくて
691:デフォルトの名無しさん
22/06/26 13:39:54.64 PhXCrOZEd.net
VBAを投げ捨ててEdgeの拡張機能を作ろう
692:デフォルトの名無しさん
22/06/26 14:11:21.83 1bCfGQVkd.net
Sendkeys
693:デフォルトの名無しさん
22/06/26 15:05:50.62 WjaufMigd.net
まだInternetExplorer.Application は有効でしょ
サポートは切れたが動かなくなる訳ない
694:デフォルトの名無しさん
22/06/26 15:26:20.76 hFDBYOe90.net
なぜMsedge.Applicationにしないの?
695:デフォルトの名無しさん
22/06/26 15:32:17.63 hFDBYOe90.net
クラス(例:MyClass)が入ってるCollectionの要素(つまりMyClass)をある条件でsortしたいのですが
簡単な方法はないのですよね?
これは標準モジュールにそのソート用のsubかfunctionを書くのが一般的ですか?
「ある条件」というのが複数あるので、複数個それを作るのが面倒。
あといま思い付いたけど、そのCollectionをメンバとして含む親クラスをつくり、その親クラスにその複数のsortに相当するfunctionを作るのがカッコイイです?
696:デフォルトの名無しさん
22/06/26 18:21:23.39 WjaufMigd.net
たぶん用途的にArrayListが良いと思う
>>687
697:デフォルトの名無しさん
22/06/26 21:43:05.30 h799Melv0.net
VBAのマクロ名てなにか制限ある?
Sub n98()
MsgBox "a"
End Sub
というマクロを作ったんだが、実行できない。実行ボタンがグレーアウトする。
しかも、マクロボタンを押すとセルカーソルが彼方に飛ばされるんだが�
698:B https://i.imgur.com/7iCfenT.mp4
699:デフォルトの名無しさん
22/06/26 22:29:47.48 UUS+pyK9H.net
>>689
ワイはそのコードコピペしたらちゃんと動いたよ
モジュールのコード上でF5キー押してみたら?
700:デフォルトの名無しさん
22/06/26 22:31:36.52 UUS+pyK9H.net
マクロ名の制限ももちろんあるよ
ググればすぐ出てくるはず
だけどこのコードのマクロ名は問題無い
701:デフォルトの名無しさん
22/06/26 22:39:05.59 h799Melv0.net
>>690
VBEでF5なら動くが、
エクセル本体で開発タブのマクロボタン押すとああなる。
ちなみにバージョンは2013。
マクロ名が英字2字+数字だと、マクロボタン押すとそのアドレスのセルに飛ばされるな。
もちろんマクロは実行できない。
そんな制限あったけ?
セルのアドレスて「予約語」になるのか?
702:デフォルトの名無しさん
22/06/26 23:12:48.18 47IFcp1V0.net
>>689
excel2010だけど全く同じ現象が起こるわ
F5からじゃくてAlt+F8な
703:デフォルトの名無しさん
22/06/26 23:30:30.80 CNfWwh200.net
この画面開いたらn98セルに行って勝手に選択(コピー?)してくれる
URLリンク(i.imgur.com)
逆に、alt+f8でマクロを開いた状態でセル選択するとテキストボックスに反映されるので、
ここは参照かなにかで連動してるっぽい
URLリンク(i.imgur.com)
704:デフォルトの名無しさん
22/06/27 07:11:11.91 KEClHONvr.net
>>694
予約語とかセル番地名、数字始まりは駄目
705:デフォルトの名無しさん
22/06/27 07:18:40.52 pJh/2YwLH.net
>>695
セル番地もダメだったのか、ウソついてごめんなさい
706:デフォルトの名無しさん
22/06/27 07:20:43.06 kD2T1aicd.net
セル番地名ってダメだったのか
707:デフォルトの名無しさん
22/06/27 07:28:39.14 JHJu1s6G0.net
For each i in collection
if a=1 then
if b=1 then
if c=1 then
Debug.print "うんこ"
end if
end if
end if
next i
こんな階層はしないほうがいいですか?もしそうならどうすべきですか?
ちなみに実際の条件文はa=1などのように単純ではなくてもっと複雑怪奇で長い文字列です。
708:デフォルトの名無しさん
22/06/27 07:42:09.30 /YUVVdlZD.net
インデント揃えてれば良いんじゃない?
それかある程度深くなったら別ルーチンや関数に飛ばすとか
709:デフォルトの名無しさん
22/06/27 07:44:02.36 cx09ANOo0.net
if a=1 and b=1 and c=1
にすればすっきり
710:デフォルトの名無しさん (スプッッ Sdbf-tCSL)
22/06/27 08:00:18 qwmHCu1Hd.net
>>700
VBAはショートサーキットじゃないから遅くなる
711:デフォルトの名無しさん (ワッチョイ 3f01-DrrO)
22/06/27 08:05:04 3L19Fpz+0.net
>>695
それどこかに書いてある?
まあ予約語や数字始まりがダメなのはわかるけどセルアドレスは盲点だわ
712:デフォルトの名無しさん
22/06/27 09:20:29.88 WYWqaC3Yd.net
>>698
何がしたくてそのIF文を書いてるかわからないけどELSEに対しての記述がなければ>>700みたいな書き方にしてもいいけど
自分はその程度のネストは許容範囲だけどね
それとなんでしないほうがいいと思ったかも書くと他の回答もらえるかもね
713:デフォルトの名無しさん
22/06/27 09:26:36.50 iDqL/u9w0.net
年取ると4階層なんかもう見たくない
714:デフォルトの名無しさん
22/06/27 09:27:26.36 HPVEPi/ad.net
Excel2021でも再現したわ
セル番地はモジュール名にできないのか、知らんかった
捨て変数とか作業ファイル名なんか普通にaaa1とか使ってるから、いつひっかかってもおかしくなかったのに
思い返してみると、なぜか捨てSubはtest1とかmacro1にしてた