파일 이름을 사용하여 참조하는 이미지 목록이 있습니다.
=image("domainname.com/somepath/"&A2&".jpg")
여기서 A2는 파일 이름입니다.
불행히도 이러한 이미지 중 일부는 .png 확장자를 가지고 있습니다. jpg 확장자를 가진 파일이 정확하고 이미지가 있는지 확인하는 솔루션을 찾으려고합니다. 찾을 수 없으면 사용하고 싶습니다
=image("domainname.com/somepath/"&a2&".png")
이 세포를 위해.
IFNA 및 IFERROR 수식이 작동하지 않습니다. 나는 또한 수식을 연결하려고 시도했습니다.
=image("domainname.com/somepath/"&a2&".png")&image("domainname.com/somepath/"&a2&".jpg")
하지만 문자열에만 &
참조를 위해 다른 폴더에 수천 개의 이미지가 있으며 형식을 제어 할 수 없습니다. 당신은 어떤 생각이 있습니까?
내가 제안하는 한 가지 해결 방법은 사용자 지정 함수를 만들고 사용하여 이미지 URL의 유효성을 검사하는 것입니다.
샘플 사용자 지정 함수 :
/**
* validate image
*
* @param {input} image url to validate.
*
* @customfunction
*/
function IMAGE_TRY(input) {
try{
var response = UrlFetchApp.fetch(input);
return 1;
} catch(err) {
return 0;
}
}
@customfunction 태그는 함수 주석에서 중요하므로 셀에 입력 할 때이 사용자 정의 함수가 제안 된 수식으로 표시됩니다.
사용자 지정 함수를 만든 후에는이를 사용하여 URL을 확인하고 IF 함수를 사용하여 올바른 이미지 URL을 사용할 수 있습니다.
견본:
=IF(IMAGE_TRY("https://www.google.com/images/branding/googlelogo/2x/googlelogo_color_160x56dp.jpg"),image("https://www.google.com/images/branding/googlelogo/2x/googlelogo_color_160x56dp.jpg"), image("https://www.google.com/images/branding/googlelogo/2x/googlelogo_color_160x56dp.png"))
샘플 출력 :
(최신 정보)
최적화 된 솔루션 :
샘플 사용자 지정 함수 :
/**
* get image url with correct file extension.
*
* @param {input} image url string without extension.
*
* @customfunction
*/
function getURL(input) {
try{
var response = UrlFetchApp.fetch(input+".jpg");
return (input.concat(".jpg"));
} catch(err) {
return (input.concat(".png"));
}
}
시트 공식 :
=image(getURL("https://www.google.com/images/branding/googlelogo/2x/googlelogo_color_160x56dp"))
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다