It would be very simple to also write a script that will do this.
 
You can loop through the number of variables you have and output their name, type and value into a file, then read them back in another project to add them. 
 
Very rough psuedo code.
function outputVars() {
   var count = Project.Variables.VariableCount;
   var name, type,value;
   for(var i = 0; i < count; i++){
      name = Project.Variables.GetVariableName(i);
      value = Project.Variables.VariableByName(name);
      type = Project.Variables.GetVariableType(Project.Variables.VariableByName(name))
     //code to write to file
   }
}
function insertVars() {
   //code to open file
  for(lines in file) {
    if(!Project.Variables.VariableExists(varNameFromFile){
      //add var and type
   }
   //set var value etc..
  }
}