ExcelのVBAに関する質問スレです
コード書き込みや作成依頼もOK
※前スレ
Excel VBA 質問スレ Part57
https://mevius.5ch.net/test/read.cgi/tech/1536583359/
Excel VBA 質問スレ Part58
■ このスレッドは過去ログ倉庫に格納されています
2018/11/19(月) 06:47:24.99ID:Qq88xGOU
2018/11/19(月) 09:52:02.94ID:5k0nvJVR
>>1乙
2018/11/20(火) 22:35:35.36ID:HCcZ0ovU
Dim Otimpo As Variant
Set Otimpo = New Penis
Otimpo.Insert Woman.Vagina
Set Otimpo = New Penis
Otimpo.Insert Woman.Vagina
2018/11/20(火) 22:46:03.40ID:vvK8gepa
俺だったらInsertToメソッドにする
5デフォルトの名無しさん
2018/11/22(木) 09:37:41.30ID:ZIGZU+Kk >>1
=LEFT("おつかれあかたあまや",4)
=LEFT("おつかれあかたあまや",4)
2018/11/22(木) 09:49:09.43ID:hMczrcoU
昭和の臭いプンプン
2018/11/22(木) 11:44:50.42ID:DvNJLexV
昭和なら $ 付けるだろ
8デフォルトの名無しさん
2018/11/23(金) 09:01:48.81ID:pYaMx0la ややExcelと離れるのですが、他に適切な場所が見当たらないのでこちらで質問。
WordやPowerpointに、埋め込み、またはリンクで表示されているExcelの表やグラフについて、
1:ファイル名(フルパス、ないし相対パス)
2:表示されているシート名(またはシート番号)
3:表示されている表の範囲(A1からB20まで、みたいな)
を、WordやPowerpointで動かすVBAから列挙する、みたいなのを作りたいと考えてます。
(1)についてはある程度(たまに取れないのがある)なんとかなるのですが、
(2)と(3)の手段が分からないでいます。
この辺を得る手段について、ご存じの方いましたら教えてください。
WordやPowerpointに、埋め込み、またはリンクで表示されているExcelの表やグラフについて、
1:ファイル名(フルパス、ないし相対パス)
2:表示されているシート名(またはシート番号)
3:表示されている表の範囲(A1からB20まで、みたいな)
を、WordやPowerpointで動かすVBAから列挙する、みたいなのを作りたいと考えてます。
(1)についてはある程度(たまに取れないのがある)なんとかなるのですが、
(2)と(3)の手段が分からないでいます。
この辺を得る手段について、ご存じの方いましたら教えてください。
2018/11/23(金) 10:13:26.49ID:NlhnMW/X
表示されているシート名 って要は現在アクティブなシートってことでしょ?
ActiveSheet.Nameで取れるんじゃ?
ActiveSheet.Nameで取れるんじゃ?
2018/11/23(金) 11:15:52.26ID:OdmoxaxG
>>8
やったことがないから保証できないが、
OLEObject.ObjectプロパティからOLEオブジェクトのコントロールを取得できるはず
ここからExcelのオブジェクトモデル経由でシート名等は取れるかも
やったことがないから保証できないが、
OLEObject.ObjectプロパティからOLEオブジェクトのコントロールを取得できるはず
ここからExcelのオブジェクトモデル経由でシート名等は取れるかも
118
2018/11/23(金) 11:27:11.08ID:pYaMx0la2018/11/23(金) 16:52:45.93ID:NlhnMW/X
表示範囲っての意味がよく判らない。使用されている範囲ならUsedRangeプロパティだけどそうじゃない?
2018/11/23(金) 18:46:47.55ID:A5v+c7Q3
QueryTables.addを利用して取り込んだテキストデータを
TextFileFixedColumnWidths = array(5,4,2)
とVBソースに記述して5、4、2バイト目で区切ってエクセルに貼り付けしているのですが、
このarrayのカッコ内の値5,4,2の部分を1つのセル内に定義しておき、そこから取得して処理する方法を教えてください。(セル値を変えるだけで区切りバイトを変えられるようにしたいです)
セル内の定義は下記のような感じの形式で実現できたらいいなと思っています。
5,4,2
または
"5","4","2"
など
よろしくお願いします。
TextFileFixedColumnWidths = array(5,4,2)
とVBソースに記述して5、4、2バイト目で区切ってエクセルに貼り付けしているのですが、
このarrayのカッコ内の値5,4,2の部分を1つのセル内に定義しておき、そこから取得して処理する方法を教えてください。(セル値を変えるだけで区切りバイトを変えられるようにしたいです)
セル内の定義は下記のような感じの形式で実現できたらいいなと思っています。
5,4,2
または
"5","4","2"
など
よろしくお願いします。
2018/11/23(金) 18:47:07.61ID:pYaMx0la
>>12
UsedRangeは、まさに「Excel上で利用されている範囲」になるので、ちょっと違う。
探しているのは、(WordとかPowerpointとか) 「被貼付側から見えている範囲」。
コピペを行うときにExcel上で範囲指定してる、まさにその範囲の情報が欲しいのです。
『広い範囲が使われているシート(埋め込みオブジェクト)の一部分だけが表示されている時、
その表示部分を特定する』がやりたいの。
UsedRangeは、まさに「Excel上で利用されている範囲」になるので、ちょっと違う。
探しているのは、(WordとかPowerpointとか) 「被貼付側から見えている範囲」。
コピペを行うときにExcel上で範囲指定してる、まさにその範囲の情報が欲しいのです。
『広い範囲が使われているシート(埋め込みオブジェクト)の一部分だけが表示されている時、
その表示部分を特定する』がやりたいの。
2018/11/23(金) 20:29:14.68ID:SJrbhhQk
>>13
3つパラメータがあるならそもそも3つのセルで管理すればいいんじゃないかと思うが、区切る回数も動的にしたいのかな?
パラメーター記述用のセルに5,4,2と入力しておいて、コード内でSplit関数を使いそのセルの値をカンマ区切りで配列化するのが普通かな
そうやって得たString配列の要素全てをCIntで型変換してInteger配列に入れ直せば、TextFileFixedColumnWidthsプロパティに代入できる
3つパラメータがあるならそもそも3つのセルで管理すればいいんじゃないかと思うが、区切る回数も動的にしたいのかな?
パラメーター記述用のセルに5,4,2と入力しておいて、コード内でSplit関数を使いそのセルの値をカンマ区切りで配列化するのが普通かな
そうやって得たString配列の要素全てをCIntで型変換してInteger配列に入れ直せば、TextFileFixedColumnWidthsプロパティに代入できる
2018/11/23(金) 20:45:52.52ID:A5v+c7Q3
2018/11/24(土) 07:26:12.22ID:XV/jbN3E
>>15
無事にやりたいことが実現できました。ありがとうございました。勉強になりました。
無事にやりたいことが実現できました。ありがとうございました。勉強になりました。
2018/11/26(月) 18:21:38.61ID:jE4mmGCd
ユーザーフォームのボタンでExcel以外のファイルを開くのにShell.Execute使ったんだけど、ボタンを押しても何も反応しない
CreateObject("Shell.Application").ShellExecute "c:\test\test.pdf"
CreateObject("Shell.Application").ShellExecute "c:\test\test.pdf"
2018/11/26(月) 19:08:14.69ID:sSO4v+r+
>>18
試してみたけど、そのコードで問題なく動くなあ
試してみたけど、そのコードで問題なく動くなあ
2018/11/26(月) 19:30:02.47ID:VtKrTehC
>>18
デザインモードがオンになってるとかじゃね
デザインモードがオンになってるとかじゃね
2018/11/26(月) 20:06:27.80ID:c8QT25Tm
検証ありがとう!
ちな標準モジュールに書くと普通に動く。
どうもユーザーフォームに書くとダメみたい
ちな標準モジュールに書くと普通に動く。
どうもユーザーフォームに書くとダメみたい
2018/11/26(月) 20:09:03.00ID:c8QT25Tm
2018/11/26(月) 22:08:01.92ID:sSO4v+r+
ユーザーフォーム作ってボタン配置してボタンのOnClickにコード書いたけど問題ない
2018/11/26(月) 22:25:28.75ID:c8QT25Tm
みんなマジか〜
環境は2010、2007ともにダメだった。
明日2016で試してみる。
ちなみにパスがフォルダ指定までなら動く。
もう意味わからん
環境は2010、2007ともにダメだった。
明日2016で試してみる。
ちなみにパスがフォルダ指定までなら動く。
もう意味わからん
2018/11/26(月) 22:57:14.49ID:sSO4v+r+
>>24
もしかしてpdfをダブルクリックした時に「このファイルを開くアプリ」の選択メニューが出てない?
もしかしてpdfをダブルクリックした時に「このファイルを開くアプリ」の選択メニューが出てない?
2018/11/27(火) 08:58:52.14ID:TmwvOLJp
>>25
すまぬすまぬ。実は開かないのは.xlsxや.xls。
さっきやったら.txtや.bmpに書き換えるとちゃんと動いた。関連付けがおかしいかと思ったけどファイルダブルクリックでexcelファイルは開く。
すまぬすまぬ。実は開かないのは.xlsxや.xls。
さっきやったら.txtや.bmpに書き換えるとちゃんと動いた。関連付けがおかしいかと思ったけどファイルダブルクリックでexcelファイルは開く。
2018/11/27(火) 09:23:34.69ID:OWqQZ565
さすがにExcelはOpen関数使えよ。。。
2018/11/27(火) 11:44:24.61ID:Y7caogE6
2018/11/27(火) 21:03:19.26ID:JHhXTC3j
30デフォルトの名無しさん
2018/11/28(水) 21:03:32.22ID:btdWGy6U 切り取り・コピーしようとしたら「クリップボードを開くことが」と表示されました 前までは正常に出来てたのに急にあんなになるなんて
どうしたらなおるんですか
原因不明の謎の症状
どうしたらなおるんですか
原因不明の謎の症状
3130
2018/11/28(水) 21:11:36.27ID:btdWGy6U >>30のところ、再起動したら直りました
自己解決
自己解決
32デフォルトの名無しさん
2018/11/28(水) 21:55:41.99ID:6iHSQiFE WorksheetFunctionを使うと遅くなると聞きました。セルで計算して取得したほうがいいですか?
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 高市首相、トランプ米大統領に「早期に会いたい」 日中関係悪化受け… [BFU★]
- 【コメ】卸売業者「簡単に安売りできない」「大暴落起きれば大赤字に」 JA「新米の販売進度が近年になく遅い。コメの回転が悪い」 ★3 [Hitzeschleier★]
- 【将棋】福間香奈 女流六冠が会見 妊娠・出産でタイトル戦の事実上不戦敗 「妊娠したら、どちらか一方を諦めないといけない状況」★2 [冬月記者★]
- かつや、明日からカツ丼(竹)790円→590円、ロースカツ定食830円→630円、カツカレー(竹)990円→790円 画像あり [お断り★]
- 日本、G7への中国招待を懸念 議長国フランスに慎重な対応要請 [どどん★]
- 【配信】TikTokで収益化を剥奪される日本人クリエイターが続出 [muffin★]
- 【高市悲報】西日本人、海外で集団万引きし自国では女子中学生を集団強姦 [614650719]
- 高市早苗、トランプおやびんに泣きつくwwwwwwwwwwwwwwwwwwwwwwww [834922174]
- 防衛省「了解は言っていない」 [966095474]
- ケンモメンってなんでこんなに反日が多いの? [866936191]
- 【定期】暇空 [455031798]
- 中国、日本人tiktokの収益剥奪開始wmwmwmwmwmwm [834922174]
