a:6:{i:0;s:12552:"				<section id="middle">
				<div class="wrap" id="bodyFormat1">
				<div class="row1 dt columns23"><!--MIDDLE ROW1 STARTS-->
				<div class="col-2 wideColumn ip ls detail_pm_15"><!--MIDDLE ROW1 COL-2 STARTS-->
				
									<div class="h1"><h1>Job openings for Office Administration in Ahmedabad</h1></div>
					<p class="breadcrumb ar uu small"> <a href="https://www.placementplanet.com/">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="https://www.placementplanet.com/current-jobs.htm" title="Current Jobs">Current Jobs</a>  			
											
					<b class="ffv p2px">&rsaquo;</b> Job openings for Office Administration in Ahmedabad</p>
									<div class="pt10px">
				<div class="dt w100">
				<div class="dtc">
				<div class="xxxlarge fw6 dif lh13em">Office Administration</div>
									<p class="mt7px fw6">Ahmedabad</p>
								
				</div>
				<div class="dtc w200px ar">
				<div class="ShareDropdown dib">	
				<div class="copyLinkPopup">Link Copied</div>		  
				<span class="data"><i class="fa fa-share-alt xxlarge vam"></i></span>
				<ul class="shareList data bdr0">
				<li><a target="_blank" href="https://www.facebook.com/sharer/sharer.php?u=https://www.placementplanet.com/job-openings-for-office-administration-ahmedabad-1009785.htm" class="facebook" title="Facebook"><i class="fa fa-facebook-official"></i></a></li> 
				<li><a target="_blank" href="https://www.instagram.com/?url=https://www.placementplanet.com/job-openings-for-office-administration-ahmedabad-1009785.htm" class="instagram" title="Instagram"><i class="fa fa-instagram"></i></a></li>
				<li><a target="_blank" href="https://wa.me/?text=https://www.placementplanet.com/job-openings-for-office-administration-ahmedabad-1009785.htm" class="whatsapp" title="Whatsapp"><i class="fa fa fa-whatsapp"></i></a></li>  
				<li><a target="_blank" href="https://X.com/intent/tweet?text=Office Administration&url=https://www.placementplanet.com/job-openings-for-office-administration-ahmedabad-1009785.htm" class="twitter" title="Twitter"><img src="https://catalog.wlimg.com/mobile/social-networking-img/1002.svg" alt="Twitter" style="width:22px;height:22px;vertical-align:middle;margin-right:6px;"></a></li> 
				<li><a target="_blank" href="https://www.linkedin.com/shareArticle?mini=true&url=https://www.placementplanet.com/job-openings-for-office-administration-ahmedabad-1009785.htm&title=Office Administration" class="linkedin" title="Linkedin"><i class="fa fa-linkedin-square"></i></a></li>
				<li><a target="_blank" href="https://pinterest.com/pin/create/button/?url=https://www.placementplanet.com/job-openings-for-office-administration-ahmedabad-1009785.htm&description=Office Administration" class="pinterest" title="Pinterest"><i class="fa fa-pinterest-square"></i></a></li>	
				<li><a href="javascript:;" title="Copy Link" class="copy" onclick="copyURL()"><i class="fa fa-clone"></i></a></li>
				</ul>
				</div>
				<script>
				$(document).ready(function(){
				$('.ShareDropdown span').click(function(){
				 $('.ShareDropdown').toggleClass("active");
				}); 
				});
				</script>
				<script>
				  function copyURL() {
				    const url = window.location.href;
					const textarea = document.createElement("textarea");
					textarea.value = url;
					textarea.style.position = "fixed";
					document.body.appendChild(textarea);
					textarea.focus();
					textarea.select();
			
					try {
					  document.execCommand("copy");
					//  alert("URL copied (fallback)!");
					  $(".copyLinkPopup").show();		 
			          setTimeout(function(){$(".copyLinkPopup").hide();}, 2000);
				      $('.ShareDropdown').removeClass("active");
					  
					} catch (err) {
					  console.error("Fallback copy failed:", err);
					}
			
					document.body.removeChild(textarea);
				  }
				</script>
				<div class="mt7px ml7px dib">
									
					<form name="frmvacdetail" method="post" action="enquiry-form-10009.htm">
					<input style="padding:7px 15px;" class="button b ffos" type="submit" value="APPLY NOW !" />
					<input type="hidden" name="catalog_mi" value="290338">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="1009785"><input type="hidden" name="subject" value="Applied for Office Administration">
					</form>
			
									</div></div>
				</div>
								<div class="fo mt10px">
				<a href="https://www.placementplanet.com/vacancy_1009785.rss" target="_blank" class="p5px15px dib c3px" style="background:#f8991b;color:#ffffff;"><i class="fa fa-feed"></i> RSS Feed </a>
				</div>
				<br>
				<p class="aj mt7px lh18em">Their main duties include welcoming and directing visitors, coordinating meetings and appointments and performing clerical tasks, like answering phones and responding to emails</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">1 - 3 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 1  Lac  25 Thousand  To  1  Lac  75 Thousand  P.A.</td>
							</tr>				
											
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">HR / Recruitment / Administration / IR / Training & Development / Operations</td>
					</tr>
									
									<tr>
					<td class="alpha75 p5px">Qualification</td>
					<td class="p5px">Other Bachelor Degree</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
												<span class="bdr dib p2px10px mr5px mt2px">Office Management</span>
														<span class="bdr dib p2px10px mr5px mt2px">Facility Management</span>
														<span class="bdr dib p2px10px mr5px mt2px">Office Assistance</span>
														<span class="bdr dib p2px10px mr5px mt2px">Petty Cash Management</span>
														<span class="bdr dib p2px10px mr5px mt2px">Office Administration</span>
														<span class="bdr dib p2px10px mr5px mt2px">Walk in</span>
												</td>
					</tr>
									
				</table>
				</div>
				<br>
				<div>
				<!--p class="large fw6">About Company</p-->
				<div>
				
								
				<br />
				
									
					<div class="bdrT pt20px">
					<form name="frmvacdetail" method="post" action="enquiry-form-10009.htm">
					<input style="padding:7px 15px;" class="button b ffos" type="submit" value="APPLY NOW !" />
					<input type="hidden" name="catalog_mi" value="290338">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="1009785"><input type="hidden" name="subject" value="Applied for Office Administration">
					</form>
					</div>
			
									</div>
				</div>			
				
				<!--MIDDLE ROW1 COL-2 ENDS--> 
				</div>
				<div class="col-3 thinColumn"><!--MIDDLE ROW1 COL-1 STARTS-->
				
				<div class="column_Box mc">
				<div class="tcl bullet divider">
				<div class="large fw6 alpha75 p12px bdrB">
				<h2>Jobs by Location</h2>
				</div>
				<div class="ic">
				<div class="mt10px">
									<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="https://www.placementplanet.com/jobs-in-ahmedabad.htm" title="Jobs in Ahmedabad">Ahmedabad</a> <b class="alpha50 bn small">(63)</b></span>
									</div>
				</div>
				</div>
				</div>
				
				<div class="column_Box mc">
				<div class="tcl bullet divider">
				<div class="large fw6 alpha75 p12px bdrB">
				<h2>Jobs by Functional Area</h2>
				</div>
				<div style="padding:10px 18px;" class="ic">
									<p class="mb5px "><span class="fr">(8)</span><a href="https://www.placementplanet.com/jobs-in-accounting-tax-fid.htm" title="Accounting / Auditing / Taxation Jobs">Accounting / Auditing / Taxati...</a></p>
										<p class="mb5px "><span class="fr">(7)</span><a href="https://www.placementplanet.com/jobs-in-sales-marketing-business-development-telecaller-fid.htm" title="Sales & Marketing / Business Development / Telecaller Jobs">Sales & Marketing / Business D...</a></p>
										<p class="mb5px "><span class="fr">(7)</span><a href="https://www.placementplanet.com/jobs-in-manufacturing-production-fid.htm" title="Manufacturing / Production / Quality Jobs">Manufacturing / Production / Q...</a></p>
										<p class="mb5px "><span class="fr">(6)</span><a href="https://www.placementplanet.com/jobs-in-supply-chain-purchase-procurement-fid.htm" title="Supply Chain / Purchase / Procurement Jobs">Supply Chain / Purchase / Proc...</a></p>
										<p class="mb5px "><span class="fr">(5)</span><a href="https://www.placementplanet.com/jobs-in-hr-recruitment-administration-ir-training-development-operations-fid.htm" title="HR / Recruitment / Administration / IR / Training & Development / Operations Jobs">HR / Recruitment / Administrat...</a></p>
										<p class="mb5px "><span class="fr">(4)</span><a href="https://www.placementplanet.com/jobs-in-engineering-design-rd-quality-fid.htm" title="Engineering / Engineering Design / R&D / Quality Jobs">Engineering / Engineering Desi...</a></p>
										<p class="mb5px "><span class="fr">(2)</span><a href="https://www.placementplanet.com/jobs-in-self-employed-entrepreneur-consultants-freelancers-fid.htm" title="Self Employed / Entrepreneur / Consultants / Freelancers Jobs">Self Employed / Entrepreneur /...</a></p>
										<p class="mb5px "><span class="fr">(2)</span><a href="https://www.placementplanet.com/jobs-in-ites-bpo-kpo-lpo-customer-service-fid.htm" title="ITES / BPO / KPO / LPO / Customer Service Jobs">ITES / BPO / KPO / LPO / Custo...</a></p>
										<p class="mb5px "><span class="fr">(2)</span><a href="https://www.placementplanet.com/jobs-in-front-office-reception-computer-operator-assistant-fid.htm" title="Front Office / Reception / Computer Operator / Assistant Jobs">Front Office / Reception / Com...</a></p>
										<p class="mb5px "><span class="fr">(2)</span><a href="https://www.placementplanet.com/jobs-in-computers-it-fid.htm" title="IT Hardware / Technical Support / Telecom Engineering Jobs">IT Hardware / Technical Suppor...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="https://www.placementplanet.com/jobs-in-it-hardware-networking-fid.htm" title="IT Hardware – Networking Jobs">IT Hardware – Networking</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="https://www.placementplanet.com/jobs-in-property-construction-fid.htm" title="Real Estate / Construction Jobs">Real Estate / Construction</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="https://www.placementplanet.com/jobs-in-corporate-planning-fid.htm" title="Corporate Planning & Strategy / Management Consulting Jobs">Corporate Planning & Strategy ...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="https://www.placementplanet.com/jobs-in-web-designing-programming-fid.htm" title="IT Software - Others Jobs">IT Software - Others</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="https://www.placementplanet.com/jobs-in-education-teaching-training-counselling-fid.htm" title="Education / Teaching / Training / Counselling / Academic Jobs">Education / Teaching / Trainin...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="https://www.placementplanet.com/jobs-in-application-programming-fid.htm" title="IT Software - Application Programming / Maintenance Jobs">IT Software - Application Prog...</a></p>
										<span class="uu db ar"><a class="showallspan" data-target="show" href="javascript:void(0)" >View More</a></span>
									
				</div>
				</div>
				</div>
				
				</div>
				<!--MIDDLE ROW1 COL-1 ENDS-->
				
				<!--MIDDLE ROW1 ENDS--> 
				</div>
				<br><br>
				</div>
				</section>
				<script>
					window.addEventListener("DOMContentLoaded", function(){
						jQuery(document).on("click", ".showallspan", function(){
							if(jQuery(this).attr("data-target") === 'show'){
								jQuery(this).text("View Less");
								jQuery(this).attr("data-target", "hide");
								jQuery(this).closest("div").find(".spanlist").removeClass("dn");
							}else{
								jQuery(this).text("View More");
								jQuery(this).attr("data-target", "show");
								jQuery(this).closest("div").find(".spanlist").addClass("dn");
							}
						});
					});
				</script>
				
	<?php
	$source_type="";
	if (!empty($_REQUEST["utm_campaign"]) && ($_REQUEST["utm_campaign"]=="google_jobs_apply" || $_REQUEST["utm_campaign"]=="JobApplyPI")) {
		$source_type=$_REQUEST["utm_campaign"];
	}
	?>
	";i:1;s:70:"Job openings for Office Administration in Ahmedabad | Placement Planet";i:2;s:240:"Office Administration Jobs,Office Administration Jobs in Ahmedabad,Office Administration Vacancy in Ahmedabad,Office Administration jobs in India,HR / Recruitment / Administration / IR / Training & Development / Operations jobs in Ahmedabad";i:3;s:435:"Apply for Office Administration Jobs in Ahmedabad India - Office Administration Vacancy  in HR / Recruitment / Administration / IR / Training & Development / Operations field with 1 to 3 years Work Experience, Key Skills are Office Management,Facility Management,Office Assistance,Petty Cash Management,Office Administration,Walk in, HR / Recruitment / Administration / IR / Training & Development / Operations jobs in Ahmedabad  India";i:4;s:2085:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Office Administration",
		  "identifier": {
	        "@type": "PropertyValue",
	        "name": "Placement Planet",
	        "value":  "1009785"
	      },
		  "hiringOrganization": {
	      "@type" : "Organization",
	      "name" : "Placement Planet",
	      "description": "Placement Planet is One of the Leading Placement Agencies, Based in Ahmedabad, Gujarat. with Our Experience & Expertise, We are Able to Provide the Most Competent Manpower Solutions to the Clients. We are Engaged in Offering Manpower Recruitment Service, Placement Services, Human Resource Consultancy, Training & Development, Career Consultancy, Resume Writing Services,And Financial Services. Our Service Package is Based Entirely On Organization’s Needs & Requirements. We Offer Customized Hr Business Solutions that Vary Based Upon the Requirements of Hiring Companies and Job Seekers.",
	      "telephone" : "7433977155",
	      "email" : "placementplanet403@gmail.com"  
	       },
		  "url": "https://www.placementplanet.com/job-openings-for-office-administration-ahmedabad-1009785.htm",
          "datePosted": "2022-12-22",
          
		  "baseSalary": " 1  Lac  25 Thousand  To  1  Lac  75 Thousand ",
		  "description": "Their main duties include welcoming and directing visitors, coordinating meetings and appointments and performing clerical tasks, like answering phones and responding to emails",
		  "educationRequirements": "Other Bachelor Degree",
		  "experienceRequirements": "1 - 3 Years",
		  "industry": "HR / Recruitment / Administration / IR / Training & Development / Operations",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Gujarat",
		      "addressRegion": "Ahmedabad"
		    }
		  },
		 "qualifications": "Other Bachelor Degree",
		     "skills": "Office Management,Facility Management,Office Assistance,Petty Cash Management,Office Administration,Walk in"
		  }
		</script>
		";i:5;N;}