[過去ログ] VBAなんでも質問スレ Part2 [転載禁止]©2ch.net (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
572: 2018/07/27(金)11:07 ID:zSlylfXh(1) AAS
Jscriptなら近いのはVBSじゃないか?
573: 2018/07/27(金)11:15 ID:OAh4kN9K(1) AAS
HTAとか
574(1): 2018/08/01(水)19:27 ID:sloNm1e3(1) AAS
Wordで読みとり専用推奨で保存されてるファイルをVBAで書き込み可で開いて編集して上書き保存したいんですが、やる方法はありますか?
575: 2018/08/01(水)22:01 ID:oaZVWoyy(1/2) AAS
読み取り専用推奨なんて属性ビットがあるのか?
576(1): 2018/08/01(水)22:05 ID:oaZVWoyy(2/2) AAS
マジだったカオスと思ったが
開くと読み取り専用か聞いてくるのか
まあ、OS側でなくワード側で制御してそうだから、回避は厳しそうな気がする
577: 2018/08/01(水)22:15 ID:HUVD91D/(1) AAS
カオス言いたい年頃なのでどうか大目に見てやって下さい
578: 2018/08/01(水)22:18 ID:NozJFPGH(1) AAS
カオスは天地が分かれる前の状態 あるいは光と闇が分かれる前の状態
579: 2018/08/01(水)22:21 ID:6UiRsc0v(1) AAS
カオスエンジェルで抜いた
580(1): 2018/08/02(木)00:14 ID:isxfR7GW(1) AAS
>>576
VBAを使わずにファイルを開いてダイアログのウィンドウをつかまえて「いいえ」ボタンにメッセージを送るという力技ぐらいしか方法はないんでしょうか?
Excelでは開くときにIgnoreReadOnlyRecommenedというのを指定すれば良さそうなんですが
581(1): 2018/08/02(木)01:48 ID:I4e8JJGh(1) AAS
document.openメソッドにも引数readonly があるみたいだけど
582(1): 2018/08/02(木)08:52 ID:L3mOQQ2h(1/2) AAS
>>581
ReadOnlyにFalseを渡しても読みとり専用で開かれるのは確認済みです
583: 2018/08/02(木)12:49 ID:rM6odxjs(1) AAS
>>574
ありません。
Wordは手動でやるしかない。
Excelとは違いますから。
584: 2018/08/02(木)18:55 ID:kRv3+o5C(1) AAS
>>580
VBAでもその力業で出来るけどね。
でも読み取り専用推奨で保存する目的はそのメッセージを出すことにあると思うからそれをスキップするコードを書くべきかという問題もある。
585(1): 2018/08/02(木)19:38 ID:CFW8XzdE(1/2) AAS
>>582
すくなくともうちの環境では、ReadOnly:=Falseで書き込み可能で開いてるけど?
その状態からReadOnlyRecommended = Falseにして保存したら、読み取り専用推奨は外れてるが
まあうちの環境がかなり古いから最近では出来ない可能性もあるが
それホントに推奨なだけなのか?
586(1): 2018/08/02(木)20:14 ID:L3mOQQ2h(2/2) AAS
>>585
試した環境はWord2010ですがここに書いてある通りです。できません。
外部リンク:support.microsoft.com
587: 2018/08/02(木)21:07 ID:CFW8XzdE(2/2) AAS
>>586
じゃあ2010から出来なくなったんだな
うちの2007ではできてるから
ただそこの文書
Note The following example applies to Word 2003 and 2002:
とか書いてあるな
Last Updated: Apr 19, 2018
らしいけど、適用対象バージョンがよくわからんな
588: 2018/08/08(水)01:24 ID:vu1bVHsA(1) AAS
ACCESSでオートルックアップクエリを使用したフォームでマスタにないものを入力した際、
フィールドとキーが一致しているレコードをテーブルで探すことができません。
と出ますが、マスタにないデータを入力しようとしたとき、上のメッセージを出すことなく、マスタ登録用フォームを呼び出すにはどうすればよいでしょうか?教えていただけると助かります。
589: 2018/08/22(水)19:57 ID:I61xiysx(1) AAS
スパークラインをVBAで挿入したいんだけど範囲指定のところがうまくいきません。
わかる方いたら教えてください。よろしくお願いします。
call cells(10 , h ).SparklineGroups.Add(xlSparkLine, "n5: n100")
"n5: n100" のところなのですが、
range(worksheets(h).cells(14,5) , worksheets(h).cells(14 , G ))
のようにして ワークシートごとの数値群をスパークラインにしていきたいのですが、、、
何か良い方法を教えてください。
よろしくお願いします。
590(1): 2018/09/02(日)12:36 ID:/2qGDDvp(1/2) AAS
質問
Outlook2010なのですが
受信トレイの検索(Ctrl+E)で「請求書」を検索するのと同じ動作を
VBAにしたいのですがどのように記述すればいいのでしょうか
ボタンに登録して使うつもりです。
OutlookVBAを使うのは初めてでしてお手引きをお願いいたします
591(3): 2018/09/02(日)16:03 ID:v7+8Ol2A(1) AAS
VBAで質問です
【前提】
・デスクトップにフォルダA
・フォルダAの中に9月1日分のExcelファイル"0901"とマクロ作動用の.xlsmファイル
【したいこと】
・フォルダAの中に9月2日分のフォルダ"0902"を作成
・"0901"を開き、B2セルの2018/9/1を2018/9/2に書き換え
・フォルダ"0902"内にファイル名を"0902"にして保存
日毎のレポートのひな形を作ろうとしています
あまり知らないながら書いてるのですがエラー出まくりで泣きそうです
592(1): 2018/09/02(日)16:16 ID:7fXcCHFS(1) AAS
>>590
Application.Searchメソッド、もしくは
Application.Session.GetDefaultFolder(olFolderInbox).GetTable(DASLクエリの引数) を使えば良いのでは
593(1): 2018/09/02(日)16:51 ID:Q0JGCJ3q(1) AAS
>>591
悪いこと言わないから、手でやるか詳しい人に頼みなさい
複数のブックが同時に開かれている状態でのVBA処理には
いろいろ面倒なところがあり、経験が必要
5ちゃんでサクっと説明できるものではない
しかもフォルダ処理も伴っているので、エラー処理を含め
きっちり作ろうとするとけっこうな規模のアプリになってしまうと思う
594: 2018/09/02(日)17:27 ID:1l6OdzeH(1) AAS
>>591
thisworkbook.path\フォルダA\0901を開いてあとはブック名から指定して必要事項を書き換え。
ブック名を指定してsaveAsで
thisworkbook.path\フォルダA\0902で保存。
蛇足だが、必要無くともブックもシートも常に指定した方が良い。
595: 2018/09/02(日)17:44 ID:GR8jnF/5(1) AAS
>>591
とりあえず作ったコードを晒せば色々添削してもらえるかと
>>593
回答できないなら黙ってなよ
596: 2018/09/02(日)18:16 ID:dkuRxOF+(1) AAS
おそらくやりたいことはこんな感じだろう。
0901ファイルを開いた状態で、9月2日当日にレポートを作成する前提。
0901ファイルを修正するという話だったからその通りにしたけど、本当ならここはテンプレートファイルから書き起こすようにするべきだと思う。
テスト実行してないので、エラーが出たらごめんなさい。
Sub CreateDailyReport
Dim Report As Workbook
Set Report = Application.Workbooks("0901")
'テンプレートから新規ファイルを作成するなら以下のように変える
'Set Report = Application.Workbooks.Open(テンプレートのパス)
Report.Worksheets("Sheet1").Range("B2").Value = Format(Date, "yyyy/mm/dd")
Dim PathString As String
PathString = Thisworkbook.Path & "¥" & Format(Date, "mmdd")
If Dir(PathString, vbDirectory) = "" Then MkDir PathString
Report.SaveAs PathString & "¥" & Format(Date, "mmdd") & ".xlsx"
Report.Close
End Sub
597: 2018/09/02(日)18:17 ID:1ZQrBI0R(1) AAS
593の言うことは間違ってないと思いますよ。
598: 2018/09/02(日)21:02 ID:/2qGDDvp(2/2) AAS
>>592
Application.AdvancedSearchして
Searchオブジェクトを検索フォルダーにSaveするっていうことですかね
単純にVBAでCrtl+Eのクイックサーチ(?)する方法があればと思ったのですが
無理っぽいですね
ありがとうございました
599(1): 2018/09/06(木)16:40 ID:KlP6yXrE(1/2) AAS
初歩的な質問でごめんなさい
うまくできません
If IsNumeric(myN) Then
Range("A1").Value=Range("A1").Value + myN
End If
myNが1の時と2の時があるとしてセルA1の値を3にしたいのですが
やってみると12っていう風に数字が並んでいってしまいます
どうしたらいいでしょうか
600(1): 2018/09/06(木)19:12 ID:iNH/PWkM(1) AAS
>>599
もしmyNがString型、あるいはObject型に文字列データが入っている場合は数値型に変換する必要がある
Range("A1").Value = Val(Range("A1").Value) + Val(myN)
でいいんじゃないかな
601: 2018/09/06(木)19:23 ID:KlP6yXrE(2/2) AAS
>>600
String型になっていました
参考にしてもっと勉強します
お付き合いくださりありがとうございました
上下前次1-新書関写板覧索設栞歴
あと 401 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ
ぬこの手 ぬこTOP 0.022s