Created
July 4, 2016 08:05
-
-
Save 1987yama3/cd8a15d1cc3dad675b58c70ac18e4e63 to your computer and use it in GitHub Desktop.
キャンペーン/広告グループの名前を一括更新するスクリプト
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
使い方: | |
1. 最初にexport()を実行してキャンペーン/広告グループのデータをスプレッドシートに書き出します。 | |
書き出すスプレッドシートは、下記のsheetIDで設定したIDのスプレッドシートとなります。 | |
2. export()を実行したあとに、スプレッドシートにキャンペーン/広告グループのデータが出力された | |
ことを確認します。 | |
3. 出力されたキャンペーン/広告グループのデータを書き換えます。このとき、ID列を変更しないように | |
してください(この値で既存のデータとマッチングさせます)。 | |
4. もう一度スクリプトを実行します。このとき、exportの行はコメントアウトし、importの行のコメント | |
を外してください。プレビューで実行し、問題ないことを確認してから、実行することをお奨めします。 | |
※ 1を何度も実行すると、スプレッドシートには末尾に追記書き込みされていきます。やり直すときは一度 | |
シートに出力されたデータを全て削除してから行うことをお奨めします。 | |
※ キャンペーン/広告グループの名称は上から下に処理が行われ、順次上書きされていきます。同じIDの | |
キャンペーンで複数の名称で設定した場合、一番下で設定したものになります。 | |
*/ | |
function main() { | |
var sheetID = '********'; | |
export(sheetID); | |
// import(sheetID); | |
} | |
function import(sheetID) { | |
var sheet = SpreadsheetApp.openById(sheetID); | |
var rows = sheet.getDataRange().getValues(); | |
for (var i = 0; i < rows.length; i++) { | |
var row = rows[i]; | |
var campaign = AdWordsApp.campaigns().withIds([ row[0] ]).get().next(); | |
campaign.setName(row[1]); | |
var adgroup = AdWordsApp.adGroups().withIds([ row[2] ]).get().next(); | |
adgroup.setName(row[3]); | |
} | |
} | |
function export(sheetID) { | |
var adgroups = AdWordsApp.adGroups().get(); | |
var sheet = SpreadsheetApp.openById(sheetID); | |
while (adgroups.hasNext()) { | |
var adgroup = adgroups.next(); | |
sheet.appendRow([ | |
adgroup.getCampaign().getId(), | |
adgroup.getCampaign().getName(), | |
adgroup.getId(), | |
adgroup.getName() | |
]); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment