When extracting sheet title from string reference (like `"Work!sheet1!A1"`), PHP function `explode()` divide this string into three parts: `['Work', 'sheet1', 'A1']`. And then these wrong values are used in formulas, ranges, etc. This change fix that problem by using special function `Worksheet::extractSheetTitle()`. This function also has been changed to make sure that worksheet title can contain "!" character. So, that function search last position of "!" in reference string and divide it to 2 parts correctly: `['Work!sheet1', 'A1']`. Fixes #325 Fixes #662
		
			
				
	
	
		
			53 lines
		
	
	
		
			777 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			53 lines
		
	
	
		
			777 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| 
 | |
| return [
 | |
|     [
 | |
|         '$A$1',
 | |
|         'A1',
 | |
|     ],
 | |
|     [
 | |
|         '$A$12',
 | |
|         'A12',
 | |
|     ],
 | |
|     [
 | |
|         '$J$1',
 | |
|         'J1',
 | |
|     ],
 | |
|     [
 | |
|         '$J$20',
 | |
|         'J20',
 | |
|     ],
 | |
|     [
 | |
|         '$AI$1',
 | |
|         'AI1',
 | |
|     ],
 | |
|     [
 | |
|         '$AI$2012',
 | |
|         'AI2012',
 | |
|     ],
 | |
|     [
 | |
|         '\'Worksheet1\'!$AI$256',
 | |
|         '\'Worksheet1\'!AI256',
 | |
|     ],
 | |
|     [
 | |
|         'Worksheet1!$AI$256',
 | |
|         'Worksheet1!AI256',
 | |
|     ],
 | |
|     [
 | |
|         '\'Data Worksheet\'!$AI$256',
 | |
|         '\'Data Worksheet\'!AI256',
 | |
|     ],
 | |
|     [
 | |
|         '\'Worksheet1\'!$AI$256',
 | |
|         '\'Worksheet1\'!$AI256',
 | |
|     ],
 | |
|     [
 | |
|         '\'Work!sheet1!\'!$AI$256',
 | |
|         '\'Work!sheet1!\'!AI$256',
 | |
|     ],
 | |
|     [
 | |
|         '\'Work!sheet1!\'!$AI$256',
 | |
|         '\'Work!sheet1!\'!$AI$256',
 | |
|     ],
 | |
| ];
 |