f1book问题:在右键快捷菜单中如何判断f1book中的被选中的单元格是否被锁定,因为只想复制没被锁定的单元。(200分)

  • 主题发起人 主题发起人 ld999
  • 开始时间 开始时间
L

ld999

Unregistered / Unconfirmed
GUEST, unregistred user!
1、如点击被锁定的区域,一下子选中了包括被锁定单元的某一行,这时可以复制,但是也一同将被锁定单元也复制了,我想实现这样的功能,虽然选定了一行,从1列到14列,但是第1、2列是被锁定的,程序自动判断后,只复制从3-14列的内容。
请高手们指点,是否有这样的判断函数等。
2、问题2、我想把f1book表格全部用作一个输入信息的界面,需要全部的格式化输入,如都为###,###.##样子,即都带有两位小数的数字,且长度为8位,输入字符或超过长度的不被输入进去,如何实现。(都有代码,而不用进入设计器)(关键是如何选定除锁定单元之外的全部单元格)
 
我的想法可能比较笨拙一点
F1Book有一个方法GetProtection可以取得当前选择的Range的锁定状态,
先用F1Book.GetSelection获取Range的R1,C1,R2,C2
然后用
for I := R1 to R2 do
for J := C1 to C2 do
begin
F1Book.SetSelection(I,J,I,J);
F1Book.GetProtection(Locked,Hidden);
if Locked then
无法直接copyrange只有用一个数组记住未锁定的R,C,粘贴时根据这个数组取值填入相应的位置。
 
var
CellProtect//是否加保护, CellHidden//是否隐藏: WordBool;
begin
F1Book.SetSelection(nRow1,nCol1,nRow2,nCol2)

F16Book.GetProtection(CellProtect, CellHidden);//
2。你可以在endedit事件中编写,取得约束条件然后重新赋值
 
输入数值的格式问题我已经解决,但是输入数值长度的限制问题却不知如何控制,如不能超过8位数.另外,怎样控制不允许输入字符型内容.


 
请各位帮忙
 
只输入数值,不输入字符!!!!!!!
 
是否有人可以帮忙
 
能否控制输入字符的长度如8位,和禁止输入数值型以外的字符.
 
如何限制输入数值的长度即超出长度等于没输入,系统不接受
 
后退
顶部