[過去ログ] VBAなんでも質問スレ Part2 [転載禁止]©2ch.net (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
1(1): 2015/05/21(木)10:52 ID:KLv0vQmm(1/2) AAS
VBAを使った質問ならなんでもござれ
本来の対象であるオフィスアプリを操作する以外の話もOK
ゲーム作り、Webアクセス、外部アプリの操作
COM(ActiveX)、Win32API、.NET Framework、DirectXなどなど
VBAで実行するものであればなんでも質問してください
VBAを開発環境としていろいろ作っちゃいましょう
前スレ
VBAなんでも質問スレ
2chスレ:tech
関連スレ
Excel VBA 質問スレ Part36 [転載禁止]©2ch.net
2chスレ:tech
Access VBA 質問スレ Part1
2chスレ:tech
VBプログラマ質問スレ(Ver.6.0 まで) part64
2chスレ:tech
Excel総合相談所 118 [転載禁止]©2ch.net
2chスレ:bsoft
2: 2015/05/21(木)10:55 ID:KLv0vQmm(2/2) AAS
前スレ埋まってたから立てた
3(1): 2015/05/22(金)20:11 ID:HMp/+WyD(1) AAS
バカはレスしないでくれる?
個人の主張として批判せず、いたずらにある類として扱うのは極めて恣意的かおバカの批判にあらざる攻撃の特徴。
まあ、その軽蔑すべき発想で返した俺も反省はしてもよいが
はっきり言って精神病とバカの特徴でしかない論法でレスするなよ。
俺はバカと精神病きらいだからな。
おまえら、マジで精神病と思われる宣言的絶対主義の形而上学バカの一味は人類の公的な敵だとおもっているからな。
さしあたりお前らが馬鹿にされていることは科学的認識の健全性をそれなりに示すから喜ばしいがな。
それにしても、単なる知識を披露しあっているだけの時は頭良さそうなふりはできるが、
いよいよ自身の認識を問われる事態になるとここにいる連中、そこの浅さを露呈するやつ多すぎ
所詮、2chだな
4: 2015/05/26(火)09:57 ID:98AIg8rM(1) AAS
ここまでテンプレ
5: 2015/05/26(火)11:15 ID:IGUKy8Mq(1) AAS
>>3
むしろ自分が歯が立たない相手だと分かったら「精神病と馬鹿」というレッテルを相手に貼って
逃げるお前の方がヘタレだけどな
精神病で馬鹿なのはお前の方だよ
6: 2015/05/28(木)19:23 ID:S82MiYOL(1) AAS
どこかわからんのでココで。
WordVBAで質問です。
あらかじめスタイルを本文内に設定しておき、
マクロで指定したスタイルが設定されている箇所を検索→
そのスタイルが指定されている場所の文章の置き換え
ということがしたいですが可能でしょうか。
スタイル名を指定して本文内を検索する、という例が見つからず困っております。
7(1): 2015/06/10(水)12:51 ID:Eg5H5jgh(1/2) AAS
outlook2010でHTML形式メール本文の
Enter改行をShiftEnter改行に一括置換、
のVBAをさがしています。
下記のVBAでWordは動くのだけど、
そのままではoutlookで動かない
Sub ShiftEnterConvert()
'
' Enter改行をShiftEnter改行に変換
'
'
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = "^13"
.Replacement.Text = "^11"
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchByte = False
.MatchAllWordForms = False
.MatchSoundsLike = False
.MatchWildcards = False
.MatchFuzzy = False
End With
Selection.Find.Execute Replace:=ReplaceAll
End Sub
8: 2015/06/10(水)12:51 ID:Eg5H5jgh(2/2) AAS
↓ここが参考になりそうなんですが、ほぼ素人の自分には無理でした…わかる方教えてください。
外部リンク:outlooklab.wordpress.com
9: 2015/06/15(月)17:19 ID:pR/1zNa6(1) AAS
>>7
受信したメールを置換ってできないのでは?
置換したファイルをエクスポートするのですか?
10(1): 2015/06/16(火)22:15 ID:x8vn2cko(1) AAS
すみません、受信メールではなく、作成中のメールです。
PCからガラケーに送ると、Enter改行だと無視されてしまうので、送る前にボタンを押してShiftEnter改行に変えたいのです。
リンク付きでPCの人にも送るので、HTMLメールのまま送りたいので。
11: 2015/06/17(水)02:45 ID:WySeJcTb(1) AAS
>>10
リボンの編集→置換で(ワイルドカードを使用する)^13と^11を指定すればウィンドウからはできましたが、
この機能に該当するメソッドがどうにも探せないですね。
参考にされたコードはワードのものなんですけど、OUTLOOKで使うにはちょっと無理そうです。
12: 2015/06/30(火)10:29 ID:ewTLWEfL(1/2) AAS
初心者から始め、2年ほど1人でVBA業務をしていたのですが
そろそろ引き継ぎ等も考え、コーディング規約のようなものを作成しようと考えています。
各プログラムで命名規則も違うため、統一したいのですが今ひとつ可読性の高い命名というのがわかりません。
修正前の変数宣言のコードを記載しますので、ぜひ添削していただけないでしょうか。
なお、グローバル変数宣言しているのは当時、この方法が一番良いと思ったためです。
13(5): 2015/06/30(火)10:41 ID:ewTLWEfL(2/2) AAS
'ワークシート名宣言
Public Const Input_WS As String = "入力" '注文書テン
プレートのワークシート名
Public Const Setting_WS As String = "設定" '注文書設定
のワークシート名
'ワークシート[入力]のセル番地宣言
Public Const Order_No As String = "AO1" '注文書番号
Public Const Order_Title As String = "Q2" '注文書種類
Public Const Deta_Issue As String = "S5" '発行日
Public Const Company_Name As String = "B8" '外注業者名
Public Const Company_Code As String = "U8" '取引先
コード
Public Const Cash_Ratio As String = "AE14" '現金割合
Public Const Bill_Sight As String = "AO14" '手形サイト
Public Const Con_Name As String = "F14" '工事名称
Public Const Con_Add As String = "F16" '工事名称
Public Const Con_Start As String = "F17" '工期始
Public Const Con_End As String = "O17" '工期終
Public Const Con_Payment As String = "F19" '工事金額
Public Const Amount_Tax As String = "L19" '税額
Public Const Amount_Total As String = "Q19" '合計金額
'ワークシート[設定]のセル番地宣言
Public Const Set_ConName As String = "B4" '工事名称
Public Const Set_ConNo As String = "B5" '工事コード
Public Const Set_Start As String = "B7" '工期始
Public Const Set_End As String = "B8" '工期終
Public Const Set_Tax1 As String = "B10" '基本税率
Public Const Set_Tax2 As String = "B11" '変動税率
14(2): 2015/06/30(火)16:19 ID:GcuTOY9X(1) AAS
>>13
工事をConと省略せずにconstruction_xxxと書くべきだと思うが、それよりもワークシートのセル番地を固定文字列で定義するのはまずいだろう。
一行ずらしましょう、とかするときどうするの?不自由この上ない。
15(1): 2015/06/30(火)16:46 ID:ybpzKx4V(1) AAS
Detaが気になる・・・
16: 2015/06/30(火)18:04 ID:RGb3IB+F(1) AAS
>>14
セル番地の固定文字列については改めて見るとすごくおかしいと思いました。
修正したいですが、皆さんワークシートやセル番地の定数はどのようにされているのでしょうか。
検索はするものの、なかなか見つけられず困っています。
>>15
気づきませんでした、すみませんありがとうございます。
17: 2015/06/30(火)19:44 ID:4fqzjiG2(1) AAS
セル番地はセルに名前を付ける
列番号はenumにまとめる
シート名はconst
基本適当
18(2): 2015/07/01(水)22:28 ID:DXkWToqb(1/3) AAS
一日20項目ほどの数値データが入力されている月報の表を
月末にデータを全て消去して、同じWS上で次月の日付、曜日
の書き込まれた新しいフォームに更新したいのですが、
マクロで実現可能でしょうか?
19: 2015/07/01(水)22:31 ID:jU+pvdKi(1) AAS
手動でやれることはたいがいマクロ化できる。
20: 2015/07/01(水)23:04 ID:DXkWToqb(2/3) AAS
やってみたけど30日までの月や31までの月などがあって
上手く行かないのです。
21: 2015/07/01(水)23:05 ID:DXkWToqb(3/3) AAS
どこかにサンプルコードでも落ちてないでしょうか?
22: 2015/07/02(木)02:39 ID:9jOibGQm(1) AAS
翌日の日付が「1」だったらコードを実行するようにしたらいいんでない?
23: 2015/07/02(木)11:43 ID:mBr3NkR3(1/2) AAS
>>18
年と月が指定されればその月の日数は求められるよ
(月だけだとうるう年があるから2月に対応出来ない)
具体的やり方は複数あるだろうけど
例えばDateserial関数で指定月の翌月のゼロ日(ツイタチの前日)を求めれば出る
2015年7月の日数を求めたらこんな感じ
Sub Test()
Dim 年指定 As Long
Dim 月指定 As Long
Dim 日数 As Long
年指定 = 2015
月指定 = 7
日数 = Day(DateSerial(年指定, 月指定 + 1, 0))
End Sub
24: 2015/07/02(木)13:00 ID:ww5oQ+GG(1) AAS
>>18
フォーム更新のタイミングは?
ファイルを開いたときに自動で更新するの?
25(1): 2015/07/02(木)14:46 ID:AbwDTtrn(1) AAS
年月は、ボックスからプルダウンリストで指定
するだけです。ただ、指定年月の1〜月末までの日付、曜日を月報の1.2行目に縦に列記するコードが出来ないのです。
26: 2015/07/02(木)16:13 ID:mBr3NkR3(2/2) AAS
>>25
こんなんでどう?
対象のワークシートと年、月、を引数に指定してコールすれば
対象のシートのA列に日付、B列に曜日を書き込むよ
年と月は省略可能で、省略すると当日の年・月を指定したとみなして処理を実行するよ
Sub test(sh As Worksheet, Optional ByVal yr As Long = 0, Optional ByVal mo As Long = 0)
Dim i As Long
Dim cnt As Long
If yr = 0 Or mo = 0 Then
yr = Year(Date)
mo = Month(Date)
End If
cnt = Day(DateSerial(yr, mo + 1, 0))
With sh
.Cells.ClearContents
.Columns(2).NumberFormatLocal = "aaa"
For i = 1 To cnt
.Cells(i, 1) = i
.Cells(i, 2) = Weekday(DateSerial(yr, mo, i))
Next i
End With
End Sub
27: 2015/07/02(木)19:18 ID:zxCnKqA7(1) AAS
何とかできそうです。ありがとうございました。
28(1): 2015/07/02(木)20:29 ID:Mdba4OI7(1) AAS
>>14
なんやわからん英語で書かれている方がよっぽど分かりずらいので、
あくまでもEXCELマクロで使用するスクリプトなのでコメントに書いている
そのコードを外人に見せるなら英語が望ましいけど、
漢字をそのまま使えばいいかと。
工事名称等は重複してるので、設定_工事名称とかになるんでしょうかねー。
セル番地の固定値を変数で持っているのが引っかかっているみたいですけど、
メンテするときはコードのメンテも込みになるでしょうから、
変数に代入して整理してるし良いのでは?
というか、そういう風にルールを敷けばいいとおもうの。
29(5): 2015/07/03(金)08:49 ID:IELcwsmr(1) AAS
>>28
全体を一行下にずらす、とかするとき数十個ある変数を個々にメンテするの?
工事_A = "AO1" → 工事_A = "AO2"
工事_B = "AP1" → 工事_B = "AP2"
・・・
30: 2015/07/03(金)14:52 ID:aFtg1Cyl(1) AAS
>>29
それでいいと思うよ
どうやろうとしてるのか知らんけど、この手の奴は分かりやすいのが一番だと思う
上下前次1-新書関写板覧索設栞歴
あと 972 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ
ぬこの手 ぬこTOP 0.035s