Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <!-- language: lang-none -->
- | partner | id | email | status | type | group | details |
- |---------|-----------|---------------------|--------|------|-------|----------------------|
- | YESTKBW | Wednesday | wednesday@gmail.com | YES | 0 | 11 | kgplqolgbmdxenwpehyn |
- | ZBSDCUY | Wednesday | wednesday@gmail.com | YES | 0 | 11 | upujkpekm tmqfzpca |
- | RBGBHNK | Wednesday | wednesday@gmail.com | YES | 0 | 11 | iky k gtlffdyukngwlo |
- | UXJGHLW | Saturday | saturday@gmail.com | NO | 0 | 11 | mjdmodggygxkydxifxny |
- | UZHNECM | Friday | friday@gmail.com | YES | 1 | 22 | wpboajbemueskbuyjqeg |
- | XACTUOK | Tuesday | tuesday@gmail.com | NO | 2 | 33 | rxnwkpmegng bobjdqlz |
- | EIOBZXS | Tuesday | tuesday@gmail.com | NO | 2 | 33 | rwqxxwoeanxqsbpbwx j |
- <!-- language: lang-none -->
- | partner | id | email | status | type | group | details |
- |---------|-----------|---------------------|--------|------|-------|----------------------|
- | YESTKBW | Wednesday | wednesday@gmail.com | YES | 0 | 11 | kgplqolgbmdxenwpehyn |
- | ZBSDCUY | | | | | | upujkpekm tmqfzpca |
- | RBGBHNK | | | | | | iky k gtlffdyukngwlo |
- | UXJGHLW | Saturday | saturday@gmail.com | NO | 0 | 11 | mjdmodggygxkydxifxny |
- | UZHNECM | Friday | friday@gmail.com | YES | 1 | 22 | wpboajbemueskbuyjqeg |
- | XACTUOK | Tuesday | tuesday@gmail.com | NO | 2 | 33 | rxnwkpmegng bobjdqlz |
- | EIOBZXS | | | | | | rwqxxwoeanxqsbpbwx j |
- function verticallyMerger(sheet, blocks){
- /*
- {
- columns: [],
- rows: [[index, count],[index, count]]
- }
- */
- for (var i = 0; i < blocks.rows.length; i++){
- for (var j = 0; j < blocks.columns.length; j++){
- sheet.getRange(blocks.rows[i][0], blocks.columns[j], blocks.rows[i][1]).mergeVertically();
- }
- }
- return sheet;
- }
- function blockBilder(sheet, initialBlocks){
- var blocks = initialBlocks;
- blocks.rows = [];
- var values = sheet.getRange(1, blocks.mergerColumn, sheet.getLastRow()).getValues();
- var isNew = true;
- var prevVal;
- for(var i = 0; i < values.length; i++){
- if(prevVal === values[i][0]){
- if(isNew){
- blocks.rows.push([i , 2]);
- isNew = false;
- } else {
- blocks.rows[blocks.rows.length - 1][1]++;
- }
- } else {
- prevVal = values[i][0];
- isNew = true;
- }
- }
- return blocks;
- }
- {
- mergerColumn : 2
- }
- function run(){
- var sheet = SpreadsheetApp.getActiveSheet();
- var blocks = blockBilder(sheet, {mergerColumn : 2, columns: [2, 3, 4, 5, 6]});
- verticallyMerger(sheet, blocks);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement