用交集在用并集?
dim rng as rangewith activesheet for i=1 to .usedrange.columns.count set rng=union(rng,intersect(.columns(i),.usedrange)) nextend withrng.select
set rng=union(区域1,区域2,...)rng.selected