JAVA + POI> System/Excel PASTEコマンドを使用できない/ブロックする方法はありますか。または、ERRORを与え、手入力を入力するときのように拒否します。BLOCK EXCEL(Javaおよびorg.apache.poi)でのPASTEの使用
私はこのExcelファイルをJava 8とorg.apache.poiでビルドします(別のライブラリが動作する可能性があります)。私は、ロックのすべての種類inplementedいる
constraint =validationHelper.createExplicitListConstraint(new String[]{"0","1","2","3","4","5","6","7","8","9"});
addressList = new CellRangeAddressList(0,999,0,0);
dataValidation = validationHelper.createValidation(constraint, addressList);
dataValidation.setShowErrorBox(true);
sheet.addValidationData(dataValidation);
::私は制限事項と検証のすべての種類を実装
sheet.lockObjects(true);
sheet.lockDeleteColumns(true);
sheet.lockDeleteRows(true);
sheet.lockFormatCells(true);
sheet.lockFormatColumns(true);
sheet.lockFormatRows(true);
sheet.lockInsertColumns(true);
sheet.lockInsertRows(true);
sheet.enableLocking();
workbook.lockStructure();
をしかしですが、あなたがして好きなペーストすることも可能ですメモリに貼り付けたセル。私はドロップダウン制限ロック場合でも:
Name name = workbook.createName();
name.setNameName("ValidationRange");
String reference = addressList.getCellRangeAddress(0).formatAsString("SHEET", true);
name.setRefersToFormula(reference);
ヘルプ素晴らしいこと、私のJavaFXアプリケーションに保存するコミュニケーションツールとしてExcelを確保するだろう= ^)
VBAの 'Worksheet.SelectionChange'マクロはクリップボードをクリアして問題を解決しますか? – jsheeran
https://stackoverflow.com/questions/37802988/apache-poi-how-to-restrict-the-user-to-clear-the-data-validations-in-excel-she/37817030#37817030、「Excel保存通信ツールとして ":いいえ、そうではありません。 「Excel」は* one *可能なデータ* export *形式です。しかし、データ入力ソースやデータ交換フォーマットとして「Excel」を使用することはできますか?あなたはこれをしてはいけません。確かに私の謙虚な意見。 –
こんにちは@jsheeranとアクセルリヒターコメントをいただきありがとうございます。私の仕事場にいる人は、データ収集、コミュニケーション、レポート作成のためにExcelに慣れています。私は同時にExcelを好きで嫌いです。それは強力ではあるが非常に厄介なツールですが、とにかくそれを最良の方法で処理し、作業方法と統合する方法を見つけなければなりません^)。コピー貼りは、シートが開いている間に起こります。開始時にクリアすれば、それでも害はあります。おそらくjsheeranあなたは私がそれをテストできるように動作することができるいくつかのコードやマクロを共有することができます。 – irJvV