diff --git "a/programmierspa\303\237/readCensusExcel.py" "b/programmierspa\303\237/readCensusExcel.py"
new file mode 100644
index 0000000000000000000000000000000000000000..ab0096aca045bd90ec5f000ee9727296782311c6
--- /dev/null
+++ "b/programmierspa\303\237/readCensusExcel.py"
@@ -0,0 +1,33 @@
+#! python3
+# readCensusExcel.py - Tabulates population and number of census tracts for 
+# each county.
+
+import openpyxl, pprint
+print('Opening workbook...')
+wb = openpyxl.load_workbook('censuspopdata.xlsx')
+sheet = wb.get_sheet_by_name('Population by Census Tract')
+countyData = {}
+# Fill in countyData with each county's population and tracts.
+print('Reading rows...')
+for row in range(2, sheet.max_row + 1):
+    # Each row in the spreadsheet has data for one census tract.
+    state  = sheet['B' + str(row)].value
+    county = sheet['C' + str(row)].value
+    pop    = sheet['D' + str(row)].value
+
+    # Make sure the key for this state exists.
+    countyData.setdefault(state, {})
+    # Make sure the key for this county in this state exists.
+    countyData[state].setdefault(county, {'tracts': 0, 'pop': 0})
+
+    # Each row represents one census tract, so increment by one.
+    countyData[state][county]['tracts'] += 1
+    # Increase the county pop by the pop in this census tract.
+    countyData[state][county]['pop'] += int(pop)
+
+# Open a new text file and write the contents of countyData to it.
+print('Writing results...')
+resultFile = open('census2010.py', 'w')
+resultFile.write('allData = ' + pprint.pformat(countyData))
+resultFile.close()
+print('Done.')