質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Access

Accessはマイクロソフトによるリレーショナルデータベース管理システムです。オブジェクト指向のアプリケーション作成に対応しており、テーブルや編集をはじめ、クエリ生成、入力フォーム作成、レポート作成など一通りの機能を備えています。

Q&A

0回答

523閲覧

AccessVBA コレクションオブジェクトのメンバをCSVファイルに出力する

mnbwqz

総合スコア74

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Access

Accessはマイクロソフトによるリレーショナルデータベース管理システムです。オブジェクト指向のアプリケーション作成に対応しており、テーブルや編集をはじめ、クエリ生成、入力フォーム作成、レポート作成など一通りの機能を備えています。

0グッド

0クリップ

投稿2021/11/20 05:05

ナビゲーションフォームで、フォームを選択するたびに選択したフォームの初期化処理がされ不便なので、タブコントロールとサブフォームに変更しようと思います。

そこで、ナビゲーションフォームのコントロール類のプロパティ(配置位置)を記録しておきたいと思います。プロパティシートの表示から項目と値全部をコピー&ペーストしようとしたのですが、できませんでした。
イメージ説明


そのためVBAで行うことにしました。
CSVは下記の形式を想定しています。
|コントロール名|幅|高さ|上位置|左位置
|:--|:--:|--:|
Auto_Header0|1500|300|200|400
botton1|200|400|50|6000
botton2|300|200|100|6000

VBAで、コレクション「controlProperty」に、最初に「コントロール名」などを項目名として追加、次いで各コントロールのプロパティを追加します。その後、CSVファイルに出力します。

VBA

1Private Sub Form_Load() 2 3 Dim controlProperty As Collection 4 Set controlProperty = New Collection 5 Dim ctrl As Control 6 With controlProperty 7 .Add Item:="コントロール名" 8 .Add Item:="幅" 9 .Add Item:="高さ" 10 .Add Item:="上位置" 11 .Add Item:="左位置" 12 For Each ctrl In Controls '各コントロールの値を追加 13 .Add Item:=ctrl.Name 14 .Add Item:=ctrl.Width 15 .Add Item:=ctrl.Height 16 .Add Item:=ctrl.Top 17 .Add Item:=ctrl.Left 18 Next 19 End With 20 21 'CSVファイルに出力 22 Open "C:\date\データ.csv" For Output As #1 23 Dim i As Integer, str As String 24 For i = 1 To controlProperty.Count 25 str = str & controlProperty(i) & "," 26 If i Mod 5 = 0 Then str = Left(str, Len(str) - 1): Print #1, str: str = "" 27 Next 28 Close 1 29 30End Sub

質問:プロパティ シートの表示からコピー&ペーストすることはできないのでしょうか。またコピー&ペーストできない場合に、VBAで短いコードで書く方法や、他の方法は無いでしょうか。よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問