いつもお世話になっております。現在、VB6でExcel(※2000です)の操作が出来るようにしてるのですが、行き詰ってしまった為、投稿させて頂きました。手順としては、@縦書きテキストボックス作成A縦書きテキストボックスに文字入力B入力した縦書きテキストボックスをコピーCセルを指定し(※A1:A1)、コピーした縦書きテキストボックスを『形式を選択して貼付け』するD図(拡張メタファイル)を指定するE作成を行った図のサイズと角度を設定する初心者な為、調べてみたもののセル上の文字をコピーして貼り付けたりすることはわかったのですが、図形からテキスト入力を行って、形式をかえて・・・という方法がわかりません。宜しくお願い致します。
『形式を選択して貼り付ける』場合の引数の付け方でエラーが発生してしまいます。 xlsSheet.Range("A1:A1").PasteSpecial Format:="図 (拡張メタファイル)" エラー:名前付き引数が見つかりません 他は、対応が出来たのですが、ここだけがうまくいきません。 アドバイスお願い致します。
> xlsSheet.Range("A1:A1").PasteSpecial Format:="図 (拡張メタファイル)"> > エラー:名前付き引数が見つかりません> 他は、対応が出来たのですが、ここだけがうまくいきません。Excel の VBA のヘルプで、PasteSpecial メソッド について調べて見て下さい。それでも解らなければ、その部分のマクロを取ってそのマクロを見て下さい。それでもまだ解らないなら、そのマクロを投稿して見て下さい。
花ちゃん様、ダンボ様返信ありがとうございます。無事に解決致しました。Range オブジェクトの PasteSpecial メソッド ※クリップボードのデータを、指定されたセル範囲に貼り付けます。Worksheet オブジェクトの PasteSpecial メソッド※指定された形式で、クリップボードの内容をシートに貼り付けます。 他のアプリケーションからデータを貼り付けるときや、 あるいは特別な形式でデータを貼り付ける場合に使います。の用途を理解していませんでした。D図(拡張メタファイル)を指定するxlsSheet.PasteSpecial Format:="図 (拡張メタファイル)"することで出来ました。下記のアドレスを参照しましたhttp://msdn.microsoft.com/ja-jp/library/cc329896.aspx#
> xlsSheet.Range("A1:A1").PasteSpecial Format:="図 (拡張メタファイル)"> エラー:名前付き引数が見つかりませんこんにちは。質問見てから、ググって見ました。わかったことは、・「名前付き引数が見つかりません」ってエラーはメソッドに予定された引数ではないってこと この場合、Format:=は使えないと言うことです。・マクロの記録でこう書かれたから、コードで動かせる筈だ、と思うでしょうが、そうでもないらしい。 「マクロの記録」結果と「実行可能コード」は微妙に違うことがある?(半信半疑) (#)VBAのコードとVBから呼ぶExcelコードでは小差があるってことかな?で、アドバイスはPasteSpecialの全引数一覧を入手して、妥当な引数を調べることですね。
> 「マクロの記録」結果と「実行可能コード」は微妙に違うことがある?(半信半疑)> (#)VBAのコードとVBから呼ぶExcelコードでは小差があるってことかな?今回の場合使用しているオブジェクトが違うから引数も違ってくるかと。Worksheets のPasteSpecial メソッドを Range オブジェクトの PasteSpecial メソッドを使っているから、引数にFormat がないのでエラーがでているのだと思いますよ。Worksheets のPasteSpecial メソッドを 使えば問題ないはずです。
花ちゃん様ありがとうございます。下記の内容で理解していなかったことがわかりました。> 今回の場合使用しているオブジェクトが違うから引数も違ってくるかと。> Worksheets のPasteSpecial メソッドを Range オブジェクトの PasteSpecial メソッドを> 使っているから、引数にFormat がないのでエラーがでているのだと思いますよ。> Worksheets のPasteSpecial メソッドを 使えば問題ないはずです。xlsSheet.PasteSpecial Format:="図 (拡張メタファイル)"で、無事正しく表示されました。