質問編集履歴
2
ベストアンサー選択後の追記を足しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -87,4 +87,42 @@
|
|
87
87
|
手が止まります。
|
88
88
|
最終目標は判断基準の確立と
|
89
89
|
コードの使いまわしが出来るようにすることです。
|
90
|
-
宜しくお願い致します。
|
90
|
+
宜しくお願い致します。
|
91
|
+
|
92
|
+
|
93
|
+
###ベストアンサー選択後の追記
|
94
|
+
いろいろ意見を頂き
|
95
|
+
ホントにコピーとペーストそれぞれ必要なのか
|
96
|
+
再度考えてみました、
|
97
|
+
ペーストは同じ内容を連続で貼付けするために
|
98
|
+
足したのですが、今回は今のところ必要なさそうなので
|
99
|
+
やめることにしました。
|
100
|
+
それに伴い値の保持の必要もなくなったので
|
101
|
+
変数はプロシージャ内へ移動、
|
102
|
+
また、PasteRngは必ず指定しなければいけなくなるので
|
103
|
+
Optional をやめ Pasteの実行判断のIfもやめました。
|
104
|
+
クラスにする必要性も低くなったと思うので標準モジュールのままで
|
105
|
+
```VBA
|
106
|
+
Option Explicit
|
107
|
+
Option Private Module
|
108
|
+
|
109
|
+
|
110
|
+
Sub MyCopy(ByVal CopyRng As Range, ByVal PasteRng As Range)
|
111
|
+
'セルの 大体の書式と 値を Copy
|
112
|
+
|
113
|
+
Dim XML As String
|
114
|
+
Dim RowSize As Long
|
115
|
+
Dim ColumnSize As Long
|
116
|
+
Const ValueDataType = Excel.XlRangeValueDataType.xlRangeValueXMLSpreadsheet
|
117
|
+
|
118
|
+
'Copy
|
119
|
+
RowSize = CopyRng.Rows.Count
|
120
|
+
ColumnSize = CopyRng.Columns.Count
|
121
|
+
XML = CopyRng.Value(ValueDataType)
|
122
|
+
|
123
|
+
'Paste
|
124
|
+
PasteRng.Resize(RowSize, ColumnSize).Value(ValueDataType) = XML
|
125
|
+
End Sub
|
126
|
+
```
|
127
|
+
回答してくださった方ありがとうございました。
|
128
|
+
また、次も宜しくお願い致します。
|
1
「過去の質問」のリンクを張りました
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
### __後で使いまわしやすい プロシージャ の書き方__
|
2
|
-
過去の質問で教えて頂いた情報を基にクリップボードを使わないで
|
2
|
+
[過去の質問](https://teratail.com/questions/136468)で教えて頂いた情報を基にクリップボードを使わないで
|
3
3
|
コピペのコードを書いてみたのですが...
|
4
4
|
また 脳内選択肢が多すぎで困ってます。
|
5
5
|
|