問題タブ [pasting]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - Ctrl+V をシミュレートせずにアプリケーションの入力フィールドにデータを貼り付けます。ウィンドウズ C++
タイトルが示すように、作成中の C++ アプリケーションからデータを移動し、それを Windows のデスクトップ アプリケーションのフィールド (具体的にはユーザー名とパスワードのフィールド) に入力しようとしています。すべてのアプリケーションで機能する必要があります。
これで、データをクリップボードにコピーし、Ctrl + V キーボードを押してデータを貼り付けるようにシミュレートする小さなプログラムを既に作成しました。ただし、これは非常に醜い方法です。私の質問は、より良い方法はありますか?
Ps。私が行った調査によると、受信アプリケーションを何らかの方法で変更する必要があるようです。残念ながら、このオプションは私には利用できません。したがって、受信アプリケーションの微調整を含むソリューションは役に立ちません。
ご協力ありがとうございました!
vim - 元に戻すの更新なしのVim「一度貼り付け」
一度だけ貼り付けを実装するには、次を使用できます。
これにより、貼り付け後にレジスタがクリアされるため、次の貼り付けが機能しなくなります。ただし、更新を元に戻す空の貼り付けが発生します。3
そのため、p回押す3
と、最初の貼り付けを元に戻すために元に戻す呼び出しが必要になります。
これを抑える方法は?私は次のようなものを試しました:
しかし、それは何の変更も課しません。
excel - Excel での VBA - アクティブ セルに貼り付けてから右タブ
Excel VBA について少しサポートが必要です。Excel と別のアプリケーションを切り替えてコピーし、別のアプリケーションから Excel に貼り付けています。私はすでにそのプロセスを停止していますが、現在アクティブなセルに貼り付ける方法についてアドバイスが必要ですD
。実際、Excel アプリケーション内で実行する必要がある正確なプロセスのリストを次に示します。
- [数値形式] 現在アクティブなセルに貼り付けます (常に
D:D
列に配置されます) - セルを 1 つ右にタブで移動
- [日付形式: "d-mmm"] 今日の日付
- タブ右
- [テキスト] 貼り付け
- タブ右
- 【会計】貼り付け
- タブ右
- その列に文字「X」を入力します
- 列から始めて、1 行下に入力し
D
ます。
これらのすべてのステップの間に、他のアプリケーションとやり取りするコードの大部分を把握しました。しかし、それに関しても 1 つの質問があります。そのアプリケーションでは、次のステートメントを実行しています。
With ATC.ActiveSession
(ATC は、アプリケーションのタイプ ライブラリを参照して、他のアプリケーションと対話するだけです)
With
アプリケーションがコピーと貼り付けを行ったり来たりするたびにステートメントを終了するのではなく、 with
Excel のライブラリを使用するステートメントとして何を使用する必要がありますか?
私が起こりたくないことの例:
しかし、代わりにWith
ステートメントを「チェーン」したいのですが、ExcelのVBAを指すためにどのステートメントを使用するかわかりません。これは私が望むものです:
excel - 複数のブックからマスターブックにデータを転送するための VBA の問題
Excel 2013 を使用しており、複数のワークブックからマスターに転送するチュートリアルの以下のコードを使用して、複数のワークブックからマスター ブックにデータを転送しようとしています。複数の wkbk からマスター wkbk にデータを追加し、マスター内の個別のスプレッドシートではなく、その上にあるデータの下に毎回データを貼り付けます。
チュートリアルに従ってコードを MASTER ワークブックに入れましたが、何も起こりません。VBAもよくわかりません。ブレークを設定してコードを実行する方法を学んだばかりですが、それでは何もわかりません。
- デスクトップに 'merge' というフォルダーがあり、MASTER というマクロが有効な wkbk と、tblScheduleMergeTWO、tblScheduleMergeTHREE、および tblScheduleMergeFOUR という 3 つの他の非マクロ wkbk があります。
- MASTER を含む各 wkbk には、同じフィールド見出しを持つ 9 つの列がありますが、このコードでは問題にならないと思います。
- それぞれからコピーする必要がある 3 つの wkbk は、データのシェーディングが異なるため、MASTER に貼り付けたときに、どのデータがどの wkbk からのものかがわかります。
私が試したこと:ポスターの編集-
MASTER wkbk を開き、その wkbk にカーソルを置き、そこからコードを実行します。
開いた状態からコピーする必要がある他の wkbks の 1 つで試してみましたが、閉じた状態で試してみました。画面が時々点滅しますが、データのコピーに関しては何も起こりません。
@Tony Dallimoreの提案に従って、前後に移動 し
Active.Workbook.Close
ましたが、何も変わりませんでした。wkbkを閉じるために何かが消去されるかどうかはわかりませんが、彼はよく知っているでしょう。ActiveSheet.Paste Destination:
Loop Application.DisplayAlerts = True
#Tony Dallimore の提案により、 に個別に変更さ
Cells(erow, 9)
れCells(erow, lastcolumn)
、他の編集と一緒に変更されましたが、何も変更されていません。#Tony Dallimore の 3 番目の提案がわかりませんでした。
Range(Cells(2, 1), Cells(lastrow, lastcolumn)).Copy with
SrcRange.Copy Destination:=DestTopLeftCellを置き換えるためでしたか? それが最後の行から最後の列までカバーするとは思いませんでした。別のチュートリアルも試しましたが、ここにリンクの説明を入力しても機能しませんでした。部屋を節約するためにコードを投稿しませんでした。
10/1/19 11:19 AM ポスター編集10. @Thomas Inzina の提案に従って、F8 を使用して、彼が投稿したコードの行ごとにトラブルシューティングを行いました。ThisWorkbook をクリックするか Sheet1 をクリックすると、コード 'With ThisWorkbook.Worksheets("Sheet1")' の最初の行が FileName="" として画面のヒントに表示されることに、F8 を使用してすぐに気付きました。実際には MASTER.xlsm と呼ばれる ThisWorkbook も認識していないようです。何が起こっているのですか?ただし、カーソルを「Do While FileName <> ""」の上に置くと、画面のヒントにファイル名が表示されます。次に F8 を押すと、Master ファイルが既に開かれているため、再度開くと破損する可能性があるというポップアップ メッセージが表示されます。NO を選択すると、もう一度開かないようにすると、終了するかデバッグするかを尋ねるエラー メッセージが表示されます。デバッグする場合は、「ワークブックを使用します。Open(FolderPath & FileName)' が問題として強調表示されます。Master wkbk を保存して閉じるだけで問題はなくなります。ただし、「With Workbooks.Open(FolderPath & FileName)」の後に F8 キーを押すと、残りのコードがスキップされ、最初に戻ります。このすべてにおいて、コードが、コピー元の wkbks に気付くことを示すスクリーン ヒントを提供していることはわかりません。
助けていただければ幸いです。この投稿をチェックするつもりですOther post to t/f data from multiple wkbksも。
FileName = Dir が間違っているのでしょうか?
2016 年 10月 2 日 ポスターの編集- Tony Dallimore への返信 - Tony、私はコードを読み通しましたが、実行して何が起こるかを確認するのに十分な理解ができたと思いました (しかし、私はそれをより深く研究し、再入力するつもりです) ; ただし、実行しようとしても何も起こりませんでした。ワークブック名やワークシート名 (例: WshtDestName) などをコードに代入する必要がありましたか?
Run Time Error 9 Subscript out of Range エラーを受け取り、それをデバッグすると、Set WshtDest = WbkDest.Worksheets(WshtDestName) が強調表示されました。
上記の WshtDestName を MASTER.xlsm ファイル内の wksht の名前に置き換える必要があるのではないかと考えました。そこで、括弧内に「Sheet1」を入れました。エラーメッセージはありませんでしたが、何も起こりませんでした。
2 つの定数で "Data" を置き換え、両方の wkbks で自分の wksht の名前を使用するのではないかと考えたConst WshtDestName As String = "Data"
のでConst WshtSrcName As String = "Data"
、"Data" があった場所に "Sheet1" を配置しましたが、やはり何も起こりませんでした。
最初の定数がSubの後にあるはずだったかどうかわからなかったので、Subの下のDimの後に移動しましたが、何も起こりませんでした。
F8 キーを押してコードの各行を確認すると、画面のヒントに次のように表示されます。
Application.ScreenUpdating = False の場合、 Application.ScreenUpdating = True と表示されます
Set WbkDest = ThisWorkbook の場合、画面のヒントには WbkSet = Nothing および ThisWorkbook = が表示されますが、これらのことは黄色で強調表示されている場合にのみ表示されます。F8 を押してその行から移動すると、カーソルをその上に置いても何も表示されません。
Set WshtDest = WbkDest.Worksheets(WshtDestName) の場合、画面のヒントには、WshtDest = Nothing および WbkDest.Worksheets(WshtDestName) = 下付き文字が範囲外であり、カーソルが (WshtDestName) のすぐ上にある場合、("Data") と表示されますが、黄色が強調表示されている場合にのみ、これらのことを言います。F8 を押してその行から移動すると、カーソルをその上に置いても何も表示されません。
("Data") を ("Sheet1") に変更しない限り、これを過ぎて F8 キーを押すことはできません。F8 で FolderPath = WbkDest.Path & "\" = "C:\Users|PC-1\Destktop\Merge\" に移動できます (WbkDest.Path = "C:\Users|PC-1\Destktop\)。マージ」、それは正しいです。
FilePath = FolderPath & " .xls " = "C:\Users|PC-1\Destktop\Merge\".xls*" 上記のように FolderPath が正しい画面のヒントでは、"C:\Users|PC-1\Destktop \マージ\"
FileName = Dir$(FilePath) = "MASTER.xlsm" が画面のヒントに表示され、FilePath は上記のように "C:\Users|PC-1\Destktop\Merge*.xls*" と同じです。
RngDest = .Cells.Find("*", .Range("A1"), xlFormulas, , xlByRows, xlPrevious) を設定します。ここで、RngDest = ヒントには何も表示されず、xlFormulas の場合は -4123、xlByRows の場合は 1 を除いて画面のヒントには何も表示されません。 、xlPrevious の場合は 2 です。
RngDest が何もない場合 RngDest = ヒントに何もない場合
HeaderCopied = False = HeaderCopied = False ではないヒントの b/c 私の目的地 wkbk、MASTER.xlsm には、最初の行に既にヘッダー行があります。
RowDestNext = 1 = RowDestNext = 画面ヒントの 1
その後、EndIf と EndWith にジャンプします。
Do While FileName <> "" And FileName <> WbkDest.Name ここで、FileName と WbkDest.Name の両方が画面ヒントで "MASTER.xlsm" になります。
F8 は、コードの残りの部分を最後までジャンプします。
With WshtDest .Cells.EntireColumn.AutoFit End With など
入力したとおりにコードを実行しましたが、ヘッダーがある場合はコメントアウトするように言ったセクションをコメントアウトし、コメントを外すように言ったセクションのコメントを外しました。それでもうまくいきませんでした。
excel - 貼り付け時に行を複製する
「N」列に「Complete - Design」を含む「Projects Overview」というシートの行をコピーして別のシートに貼り付けるvbaコードがあります。これはしばらくの間正しく機能していましたが、今では行を複数回貼り付けます。貼り付けられた複製の数が、「プロジェクトの概要」シートで使用されている行の数と一致することがわかりました。コードは各行をループして実行しているだけだと思います。
これが私がこれまでに持っているものです:
c - エラー: 無効な前処理トークンで形成された貼り付け
次のコードがあります。
example.c で使用しようとしています。
ARM-MDK ツールで次のエラーが発生します [ここに画像の説明を入力][1] [1]: https://i.stack.imgur.com/33MN1.jpg エラー: ')"コマンド:"' を貼り付けます。無効な前処理トークン [-Winvalid-token-paste] エラー: 貼り付けフォーム ',12'、無効な前処理トークン [-Winvalid-token-paste]